Может кто-нибудь сказать мне ли это безопасно и определил:Безопасно ли устанавливать ссылки в следующем порядке
class RefClass
{
public:
RefClass(int i) { this->i = i; }
int& GetRef() { return i; }
private:
int i;
};
RefClass rc(10);
int* refp;
{
refp = &rc.GetRef();
}
*refp = 20;
В частности меня интересует жизни возвращенного ссылки вложенной области и может ли она ссылаться в этой области, а затем будет разыменоваться как lvalue после того, как эта область исчезнет.
Этот код компилируется и работает как ожидается в VS2012, но это не значит, что он будет в следующей версии, поэтому я пытаюсь найти окончательный ответ.
ваш ответ тоже правильно, но дает кредит на другой ответ на более объяснения. –