码迷,mamicode.com
首页 > 编程语言 > 详细

5.2 C++重载操作符的优先级

时间:2017-10-20 10:06:14      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:对象   container   定义   snippet   这一   main   重载函数   使用方法   之间   

参考:http://www.weixueyuan.net/view/6380.html

总结:

  重载操作符不能改变操作符的优先级和语法特性。  

重载操作符不能改变操作符的优先级和语法特性。例如上一节复数类中的加法操作符重载函数,重载后加法的优先级仍然保持不变,重载后仍然为二元操作符。

例1:

int main()
{
    complex c1,c2,c3,c4;
        //......
    c4 = c1 + c2 * c3;
    return 0;
}

 

继续沿用上一节的例1中的complex复数类,在例1中定义了该类的四个对象,然后进行四则运算,c4 = c1 + c2 * c3; 这一语句亦等同于c4 = c1 + ( c2 * c3 ) ;,虽然在复数类中重载了加减乘数四个操作符,但是并不会改变它们为二元操作符的特性,同时也不会改变它们的优先级,因此对于重载后的加法操作符而言,其优先级是低于乘法操作符的。

重载后的操作符其用法不会被改变,例如加法操作符总是出现在两个操作数之间,重载后,使用加法操作符仍然是必须将加法操作符置于两个操作数之间。例如例1中的加法和乘法操作符在重载后仍然保持原有的使用方法。

5.2 C++重载操作符的优先级

标签:对象   container   定义   snippet   这一   main   重载函数   使用方法   之间   

原文地址:http://www.cnblogs.com/yongpan/p/7697519.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!