c++基础知识3——三目运算符
三目运算符的返回值
c语言中:
返回值为变量值,不能作为左值使用。
c++中:
当作为左值时直接返回变量本身,当作为右值时返回变量值。如:
int a=1;
int b=2
(a<b ? a : b)= 3; //在c语言中此句报错,而c++则正确
注意,如果返回的值中有一个是常量值,则不能作为左值使用。如下会报错:
(a<b ? a : 2)=3; //在c++中会报错
三目运算符的返回值
c语言中:
返回值为变量值,不能作为左值使用。
c++中:
当作为左值时直接返回变量本身,当作为右值时返回变量值。如:
int a=1;
int b=2
(a<b ? a : b)= 3; //在c语言中此句报错,而c++则正确
注意,如果返回的值中有一个是常量值,则不能作为左值使用。如下会报错:
(a<b ? a : 2)=3; //在c++中会报错