C++等号操作符重载错误

今天在帮同事看一段代码时发现这么一个问题,虽然不大,但是困惑了不少时间,知道在CSDN论坛上找到答案,特此记录下来

大家都知道,C++支持操作符重载,操作符重载可以有两种实现方式:成员函数和全局函数

但是,我今天碰到的问题就是,我实现了一个等号操作符用来操作自定义类,编译的时候,提示

void operator=(const A& ,const A&) must be a nonstatic member function

其实这个错误已经说的很明白了,但是我一下没反应过来,一直以来都任务操作符重载可以申明为全局函数的,知道找得到了这个帖子,才知道,原来=号操作符和一些其他的操作符重载是只能实现成成员函数的。

http://blog.csdn.net/cook2eat/article/details/52420200

猜你喜欢

转载自blog.csdn.net/challeng_everything/article/details/79555706