エラー LNK2019 および LNK1120 に問題があります。
私は2つのプロジェクトで解決策を持っています。最初のプログラムには自分のプログラムがあり、2 番目のプロジェクトにはテスト ファイルがあります。
2 番目のプロジェクトでは、ヘッダー ファイルを (クラスと共に) インクルードできます。そして、インラインメソッドを使用できます。しかし...私はヘッダーファイルで.cppファイルに実装された静的プライベートメソッドを定義しました。この静的プライベート メソッドを使用するパブリック インライン メソッドをテストする場合、LNK2019 エラーと致命的なエラー LNK1120 が発生します。
どうすればいいのかわからない...最初のプロジェクトでエラーなしで使用できるので、私にとっては良さそうです...
例を見てください...解決策:
プロジェクト 1:
// example.h
class Example {
public:
void method() { static_method(); };
private:
static void static_method();
};
// example.cpp
void Example::static_method() { /* implementation */ }
// main.cpp
void main()
{
Example e;
e.method(); // it works!
}
しかし...
PROJECT2 (ソリューション内):
// test.cpp
void main()
{
Example e;
e.method(); // it doesn't work (but if I add implementation of
// Example::static_method() to header file example.h - it's OK)
}
私たちを手伝ってくれますか?【VS2010】
ありがとう。