int a=0;
++(a++);
或者++a++凝垛;
程序出錯懊悯;因為a++返回的是一個臨時變量,而臨時變量都是const梦皮,表示的是一個右值炭分,對常量++顯然錯誤。
左值和右值的區(qū)分:
左值和右值都是針對表達(dá)式而言的剑肯,左值是指表達(dá)式結(jié)束后依然存在的持久對象捧毛,右值是指表達(dá)式結(jié)束時就不再存在的臨時對象。一個區(qū)分左值與右值的便捷方法是:看能不能對表達(dá)式取地址让网,如果能呀忧,則為左值,否則為右值溃睹。
int a=0;
++(a++);
或者++a++凝垛;
程序出錯懊悯;因為a++返回的是一個臨時變量,而臨時變量都是const梦皮,表示的是一個右值炭分,對常量++顯然錯誤。
左值和右值的區(qū)分:
左值和右值都是針對表達(dá)式而言的剑肯,左值是指表達(dá)式結(jié)束后依然存在的持久對象捧毛,右值是指表達(dá)式結(jié)束時就不再存在的臨時對象。一個區(qū)分左值與右值的便捷方法是:看能不能對表達(dá)式取地址让网,如果能呀忧,則為左值,否則為右值溃睹。