-1
メインクラスのシングルトンによって呼び出されたネストされたクラスの関数を使用しているときはいつでもLNKエラーが発生します... MSDNで検索したものの、このlnkerrorの修正に関する私の問題に。ネストされたクラスを使用したときのLNKエラー
//MainClass.hpp
class MainClass
{
public:
static MainClass& get(); //singleton
private:
MainClass();
public:
class NestedClass
{
public:
NestedClass();
public:
__forceinline void some_function();
};
public:
std::vector<NestedClass> get_nested_array();
private:
std::vector<NestedClass> array_of_nested; //gets filled in MainClass ctor
};
//SomeClass.cpp
SomeClass::SomeClass()
{
auto nesteds = MainClass::get().get_nested_array();
for(auto& n : nesteds) {
n.some_function(); //throws LNKError 2019 in MSVC
}
}
質問を編集して、正確なエラーメッセージを含めてください。 – aschepler
ある時点で、 'void MainClass :: NestedClass :: some_function(); 'の実装が必要です – chtz
実装はMainClass.cppで与えられます。 –