作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您将在下面看到 3 个类。 我的问题是为什么我可以在 FunnySquare
类的 getArea()
上使用 override
,即使它是在 Square
类中未标记为虚拟。
我的假设是一个被覆盖的纯虚函数是虚的,即使它没有被指定,但我不确定这是真的,也找不到任何引用来确认。
class Shape {
public:
virtual float getArea() = 0;
};
class Square : public Shape {
private:
float length;
public:
Square(float len){
length = len;
}
float getArea() override {
return length * length;
}
void sayHi() {cout << "hell0" << endl;}
};
class FunnySquare : public Square {
public:
FunnySquare(float len) : Square(len) {}
void tellJoke() {std::cout << "I gave you the wrong area haha" << endl;}
float getArea() override {
return 2.0;
}
};
最佳答案
是的,Square::getArea
和FunnySquare::getArea
都是virtual
也是。
(强调我的)
Then this function in the class Derived is also virtual (whether or not the keyword virtual is used in its declaration) and overrides Base::vf (whether or not the word override is used in its declaration).
关于c++ - 被覆盖的纯虚函数是虚拟的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69039022/
我有一个特别的问题想要解决,我不确定是否可行,因为我找不到任何信息或正在完成的示例。基本上,我有: class ParentObject {}; class DerivedObject : publi
在我们的项目中,我们配置了虚 URL,以便用户可以在地址栏中输入虚 URL,这会将他们重定向到原始 URL。 例如: 如果用户输入'http://www.abc.com/partner ',它会将它们
我是一名优秀的程序员,十分优秀!