首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小菜,重载运算符函数的疑惑

2012-11-04 
小菜求救,重载运算符函数的疑惑为什么运算符函数operatar必须重载为成员函数而不能是友元函数?*却可以啊

小菜求救,重载运算符函数的疑惑
为什么运算符函数operatar=必须重载为成员函数而不能是友元函数?
*=却可以啊.
运算符函数operatar=为什么返回值不能是void而++.*=就可以呢?


这=真特殊啊= =,
不能被继承这个还能理解

[解决办法]
个人理解

c++的类的构造函数、拷贝构造函数、拷贝赋值操作符和析构函数是特殊成员函数,=就是这么特殊

如果类内不定义=运算就会默认生成一个浅拷贝赋值的函数,再在类外尝试重载就不行了

热点排行