所以我有一个名为 package 的类,其中包含一堆变量。我有所有的 get/set 方法和一个构造函数工作。
我有两个名为 twoDay 和 threeDay 的派生类,它们继承了包类并且需要使用它的构造函数。
包类的构造函数:
package::package(string sN, string sA, string sC, string sS, int sZ, string rN, string rA, string rC, string rS, int rZ, int w, int c) {
this->senderName = sN;
this->senderAddress = sA;
this->senderCity = sC;
this->senderState = sS;
this->senderZip = sZ;
this->receiverName = rN;
this->receiverAddress = rA;
this->receiverCity = rC;
this->receiverState = rS;
this->receiverZip = rZ;
this->weight = w;
this->cpo = c;
}
我一直在为threeDay标头中的构造函数使用此代码:
threeDay(string, string, string, string, int, string, string, string, string, int,int,int);
我需要做的是让 twoDay 和 threeDay 能够使用构造函数。我的意思是派生包需要能够使用基类构造函数。
我目前收到此错误:
threeDay.cpp:10:136: error: no matching function for call to ‘package::package()’
我从这个链接做了一些研究:http ://www.cs.bu.edu/teaching/cpp/inheritance/intro/
和这个链接:C++ 构造函数/析构函数继承
所以看起来我没有直接继承构造函数,我仍然需要定义它。如果是这样,那为什么我的代码现在不起作用?
但我似乎无法让它工作。
一旦我让构造函数工作,它就会从那里顺利航行。