【发布时间】:2013-06-26 10:02:03
【问题描述】:
在这段代码中:
class Base {
public:
virtual void method() = 0;
};
class Derived1 : public Base{
public:
virtual void method() override { }
};
class Derived2 : public Base{
public:
void method() override { }
};
Derived1 和 Derived2 有什么区别吗?
【问题讨论】:
-
Derived2::method2是虚拟的。 -
如果语法允许的话。 (未选中)然后
derived2->method()也将是虚拟的(虽然是隐式的) -
@R.MartinhoFernandes:所以隐含了 virtual 关键字?
-
@Alex: Compiles fine 我在 gcc-4.7.2 下
标签: c++ c++11 overriding virtual-functions