每当我使用我的主要类的单例调用的嵌套类中的函数时,我都会收到LNK错误...我已经搜索了但MSDN上没有任何答案适用于我关于修复此lnkerror的问题。
//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
}
}
答案 0 :(得分:-2)