简单例子如下:
其中num不能进行后置++,否则会提醒:表达时必须为可修改的左值,希望哪位大神
可以系统详细的讲一下原因。
int& add(int& num)
{
return ++num;
}
如果gcc或者g++不报错误说明标准器设计不合理 ,一个函数内,在return之后不能做运算。
++num属于先进行自➕再进行别的运算,num++属于别的运算进行完后再进行自➕, return 属于函数的最后操作,用num++的话自➕条件达不到。
和编译器有关,在gcc上可以编译,不报错