double salary = wage = 9999.99错误
在看书时,有这么一句表达式
double salary = wage = 9999.99;
在Linux中编译时,不能通过,提示是
error: ‘wage’ was not declared in this scope
这个错误应该这样理解。在C++中,=是从右到左进行结合,那么这个表达式可以拆分如下
double salary = (wage = 9999.99);
这样的话,这条表达式的意思是将9999.99赋值给wage这个变量,然后用wage这个变量来初始化这个salary变量。由于在赋值操作时,编译器未找到wage这个变量,那么就会报错。
将表达式拆分如下,即可通过编译:
double wage;
double salary = wage = 9999.99;
如果文章对你有帮助,就点个赞吧!

浙公网安备 33010602011771号