前提・実現したいこと
名前空間内に静的な関数を実装したい。
発生している問題・エラーメッセージ
エラー C2027 認識できない型 'TestClass3' が使われています。 エラー C2079 'a' が 未定義の class 'TestClass3' で使用しています。
該当のソースコード
TestClass2.h
C++
1#pragma once 2 3class TestClass3; 4 5class TestClass2 6{ 7 TestClass2(){}; 8 ~TestClass2(){}; 9}; 10 11namespace ts 12{ 13 //class TestClass3; 14 class tmp1 15 { 16 public: 17 tmp1() {}; 18 ~tmp1() {}; 19 20 static TestClass3 tmp3(){ TestClass3 a; return a;} 21 22 }; 23 24 25 class TestClass3 26 { 27 public: 28 TestClass3() {}; 29 ~TestClass3() {}; 30 31 static tmp1 tmp4(){ tmp1 b; return b;} 32 void Hello3(void){ TRACE("hello3 \n"); return; } 33 }; 34}
MFCApplication1Dlg.cpp
C++
1void CMFCApplication1Dlg::OnBnClickedButton1() 2{ 3 // TODO: ここにコントロール通知ハンドラー コードを追加します。 4 5 ts::TestClass3 tmp3 = ts::tmp1::tmp3(); 6 7}
試したこと
前方宣言がおかしいかと思い、namespace内に試しても同じエラーができます。
どのような検索をすれば問題解決ができるかもわからず手詰まりです。
ご教授いただけると助かります。
補足情報(FW/ツールのバージョンなど)
Visual studio 2017
プラットフォームツールセット:v141
MFC
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。