Мне было интересно, почему следующий код (уже закомментированный) вызовет
C2102: '&' требует l-значения
Есть ли лучший способ избегайте использования переменной tmp
?
class a {
private:
int *dummy;
public:
int* get_dummy() const {
return dummy;
}
};
int main()
{
a aa;
// error C2102: '&' requires l-value
//int** me = &(aa.get_dummy());
// OK!
int *tmp = aa.get_dummy();
int** me = &(tmp);
}