【发布时间】:2014-12-25 00:51:42
【问题描述】:
我喜欢在 C++ 中将我的类声明和定义分开。因此,在标题中,我可以定义一个“基”类,如下所示:
# Base.h
class Base
{
int n;
public:
Base(int x);
};
并在cpp文件中定义其构造函数实现,即,
# Base.c
Base::Base(int x)
{
n = x;
}
现在,如果我定义一个继承“基”类的“派生”类,我可以将参数传递给基类,如下所示:
#Derived.h
class Derived : public Base
{
int t;
public:
Derived(int y) : Base(t) {t = y;}
}
但是这样做需要我将 Derived 类的构造函数的主体放在头文件中,即{t = y;},因此构造函数定义不再与其声明分开。有没有办法将参数传递给类的基类构造函数,仍然使我能够在 cpp 文件中为派生类定义构造函数?
【问题讨论】:
标签: c++ class inheritance constructor