Во-первых, очень интересный вопрос.
Я бы сказал, что это неопределенное поведение, предполагая, что «оборванная ссылка» означает, что «время жизни объекта« ссылка на объект »закончилось, и хранилище, которое занимал объект , имеет были повторно использованы или выпущены ». Я основываю свои рассуждения на следующих стандартных правилах:
3.8 §3:
Свойства, приписываемые объектам в рамках этого международного стандарта, применяются к данному объекту только в течение его жизни. [Примечание: В частности, до начала жизни объекта и после его окончания жизни существуют существенные ограничения на использование объекта, как описано ниже ...]
blockquote>Все случаи «как описано ниже» относятся к
До того, как срок жизни объекта запустился, но после того, как хранилище, которое будет занимать объект, было выделено38, или после того, как срок жизни объекта закончился и до хранилище, которое занимаемый объект повторно используется или освобожден
blockquote>1.3.24: неопределенное поведение
поведение, для которого настоящий международный стандарт не предъявляет требований [Примечание: неопределенное поведение можно ожидать, если в этом Международном стандарте отсутствует явное определение поведения или когда программа использует ошибочную конструкцию или ошибочные данные. ...]
blockquote>Я применяю следующий цикл мыслей к приведенным выше цитатам:
- Если стандарт не описывает поведение для ситуации, Функция не указана.
- Стандарт описывает только поведение объектов в течение их жизни и несколько особых случаев вблизи начала и конца их жизни.
- Таким образом, использование ссылки danling каким-либо образом не имеет поведения, предписанного стандартом, поэтому поведение не определено.