クラス内のフィールドが、.cpp ファイルのコンストラクターからアクセスできないという問題に遭遇しました。理由はわかりませんが、.cpp はそれを継承せず、残りの部分で使用するためにそれを構築できません。プログラム
Test.h で構築したいフィールドを含むクラスを次に示します。
class Test
{
public:
Test();
virtual ~Test();
void count();
int counter();
};
Test.cpp のフィールド 'counter' のコンストラクタは次のとおりです。
Test::Test() : counter(0){}
私のC++の知識では、Test.cppには#include "Test.h"が含まれているため、これは正しいはずであり、main.cppのみを使用してヘッダーを使用しない場合、クラスを作成および構築するときにまったく同じコードが機能します。アイデアはありますか?