gpt4 book ai didi

c++ - 虚运算符重载 C++

转载 作者:太空宇宙 更新时间:2023-11-04 16:09:08 24 4
gpt4 key购买 nike

假设我想为派生类重载“==”运算符,我是否需要在派生类头文件中重写重载,或者有没有办法在 .cpp 文件中实现运算符重载而不必在头文件中添加任何内容?如果是这样,派生运算符的实现在 .cpp 中会是什么样子?

我的标题看起来像什么:

class A
{
public:
A();
~A();
virtual bool operator==(const A &ref) = 0;
protected:
int year;
string note;
}
class B:A
{
public:
B();
~B();
bool operator==(const B &ref); //is this needed or not?
private:

int month, day;
}

最佳答案

如果要覆盖子类中的虚函数,则需要在子类中声明函数覆盖。

所以是的,需要声明。


这样想:类声明可以在很多地方和很多源文件中使用,否则编译器怎么知道该函数已被重写?

关于c++ - 虚运算符重载 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30638634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com