【发布时间】:2012-10-18 15:55:18
【问题描述】:
我在头文件中有抽象基类和派生类。是否可以在派生类之外定义纯虚函数?
例如:
//file .h
class Baseclass
{
public:
virtual int vfunc() = o;
//assume Ctor and Dctor
};
class Derivedclass : public Baseclass
{
public:
int vfunc();
//assume Ctor and Dctor
};
现在在 cpp 文件中:
#include <file.h>
int Derivedclass :: vfunc()
{
// Body of the function
}
上述方法是否正确/可能?
【问题讨论】:
-
你应该使用
#include "file.h" -
你为什么认为它不正确?编译器有没有给出任何错误或警告??
-
@elyashiv:不!请不要给出这样的笼统陈述。
<>和""之间有真正的区别,如果您想解释,请做,但不要在没有任何理由的情况下敲定自己的规则。 -
是
= 0;而不是= o; -
对不起,我这边的错字:1) virtual int vfunc() = 0; 2)#include“file.h”。但我的主要意图是了解纯虚函数的定义方法。我从下面的答案中得到了澄清。谢谢大家。
标签: c++