複数レベルの継承を行い、基本コンストラクターを呼び出そうとしていますが、コンパイラーは基本コンストラクターを見つけることができません..
no overloaded function takes 8 arguments
コードのどこが間違っていますか?
基本クラス コンストラクターの .cpp は、デフォルトで 10 個のメンバー変数 int を 0 に設定します。
Baseclass::Baseclass(void) : m_1(0),m_2(0),
m_3(0),m_4(0),
m_x(0),m_y(0),
m_5(0),m_5(0),
m_7(0), m_8(0)
{
}
Baseclass::Baseclass(int _1,int _2,int _3, int _4, int _5,int _6, int _7, int _8)
: m_1(_1),m_2(_2),
m_3(_3),m_4(_4),
m_x(0),m_y(0),
m_5(_5),m_6(_6),
m_7(_7), m_8(_8)
{
}
そして私の最初のサブクラスヘッダーには
class SubclassA:
public Baseclass
{
public:
SubclassA(void);
using Baseclass::Baseclass;
~SubclassA(void);
2 番目のサブクラスが続きます。
class SubclassB:
public SubclassA
{
public:
SubclassB(void);
using Baseclass::Baseclass;
~SubclassB(void);
次に、このクラスの新しいインスタンスを次のように初期化しようとします。
SubclassB(Id,0,100,100,10,100,1,1)
using SubclassA::SubclassA;
SubclassB 内で有効かどうかはわかり ませんでしたが、問題は解決しませんでした。