How to overload the conditional operator?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Operator overloading
我想知道如何在cpp中重载条件运算符?
1 2 3 4 5 | int a,b,c; a=10; b=11; c = (a>b) ? a : b; |
有可能吗?
不能重载多个运算符。这些运算符的右操作数是名称而不是对象:
直接成员访问(.)
类成员(.*的尊重指针
范围分辨率(::)
大小(size of)
条件运算符(?:)也不能超载。
此外,新的类型转换运算符:static cast<>、dynamic cast<>、reinterpret cast<>、const cast<>,以及和预处理器标记不能超载。
http://www.informit.com/guides/content.aspx?G=cplusplus&seqnum=23
不能重载条件运算符。
不,不能重载条件运算符,因为它只是简单的
但是,您可以重载条件中使用的运算符,但不能像上面的示例中那样为原始类型(如