錯誤一:
在頭文件中,類外面定義成員函數沒有加 inline
關鍵字
並且在 .CPP
文件中包含了頭文件。
Query.h
class Query
{
public:
Query(const std::string&); //創建一個新的 WordQuery 對象
private:
Query(std::shared_ptr<Query_base> query) : q(query) {}
std::shared_ptr<Query_base> q;
};
inline //在頭文件中定義成員函數 一定要加 inline
Query::Query(const std::string &s) : q(new WordQuery(s)) { }