【发布时间】:2012-08-27 09:56:15
【问题描述】:
我创建了一个抽象基类,它有一个带有默认参数的纯虚方法。
class Base {
...
virtual someMethod(const SomeStruct& t = 0) = 0;
...
}
class Derived : public Base {
...
virtual someMethod(const SomeStruct& t = 0);
...
}
所以我想知道将默认参数设置为纯虚拟方法并将整体设置为虚拟方法是否是一种好习惯?
【问题讨论】:
-
我想你的意思是 const SomeStruct* t = 0?
-
@luskan:
SomeStruct可以从0隐式转换。 -
“将默认参数设置为纯虚拟”是什么意思?
-
我的派生类 someMethod 应该有默认参数,这是基类的纯虚拟接口的实现。通过将默认参数设置为纯虚拟方法,我的意思就是我在示例中写的内容。
标签: c++