我正在尝试通过C ++继承,我的代码有问题。我有从它派生的基类Caine和CaineCuPete。当我声明派生类构造函数时,我收到错误。
CaineCuPete(int nPete) : Caine(cNume,cHeight,cWeight,cAge,cColor);
错误:
cNume未在其范围内声明。 cHeight未在其中声明 范围。 ...
答案 0 :(得分:2)
您需要在派生类构造函数中将这些作为输入参数。
CaineCuPete(int nPete, string cNume, double cHeight,
double cWeight, double cAge, int cColor ) : Caine(cNume,cHeight,cWeight,cAge,cColor),
Pete ( nPete )
{
}
此链接说明: http://www.learncpp.com/cpp-tutorial/114-constructors-and-initialization-of-derived-classes/
答案 1 :(得分:1)
您应该在首次使用之前定义变量cNume,cHeight,cWeight,cAge,cColor
。一个常见的问题是它们是在使用点之后而不是之前定义的。