为什么他的程序可以正常运行,而我的报错error: using temporary as lvalue [-fperssive],如果f()是临时量的话,那么f()的返回值又是什么东西?有没有办法对这个进行操作?
因为f()返回的对象是临时对象,它不能作为左值。所以语法报错了。如果你想操作,需要用一个左值对象
A b = f(); b.i = 10;