C++运算符重载(7) - 赋值操作符能否被继承?可以

赋值操作符也可以被继承。

基类的操作符可以被子类访问使用

例子如下

#include 
using namespace std;
//操作符能否被继承??

class A {
public:
	A& operator=(const A& obj) {
		cout << "the = operator called!" << endl;
		return *this;
	}
};

class B: public A{
private:
	int data;

public:
	B(int data) {
		this->data = data;
	}

	void printNum() {
		cout << this->data << endl;
	}
};

int main() {
	B a(10), b(20);
	a = b;
	
	a.printNum();
	b.printNum();

	system("PAUSE");
	return 0;
}
输出: 
base class assignment operator called




你可能感兴趣的:(C/C++)