大佬教程收集整理的这篇文章主要介绍了c – 重载运算符,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
class unaryOperators { public: int i; unaryOperators (int tempI = 0) { i = tempI; } unaryOperators operator++ (int); unaryOperators operator++ (); };
此全局定义是否与重载运算符的后缀或前缀版本相对应?为什么?
unaryOperators operator++ (unaryOperators &onE) { return one; }
unaryOperators& operator++ (unaryOperators &onE) ^^
是非成员前缀一元增量运算符.
非成员后缀一元增量运算符将另外的int作为策略强制参数.
unaryOperators operator++ (unaryOperators &one,int)
参考:
C 03标准13.5.7增量和减量[over.inc]
[Example: class X { public: X& operator++(); // prefix ++a X operator++(int); // postfix a++ }; class Y { }; Y& operator++(Y&); // prefix ++b Y operator++(Y&,int); // postfix b++ void f(X a,Y b) { ++a; // a.operator++(); a++; // a.operator++(0); ++b; // operator++(b); b++; // operator++(b,0); a.operator++(); // explicit call: like ++a; a.operator++(0); // explicit call: like a++; operator++(b); //explicit call: like ++b; operator++(b,0); // explicit call: like b++; } —end example]
以上是大佬教程为你收集整理的c – 重载运算符全部内容,希望文章能够帮你解决c – 重载运算符所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。