我一直收到以下错误:
utils.h:22:39: error: template argument 4 is invalid
utils.h:21:24: error: template argument 2 is invalid
当我尝试编译时:
class Words {
map <string, *Words > synonyms;
map <string, map<string, *Words> > translations;
};
我不太明白是什么使它成为无效的论点。错误箭头指向&#34;&gt;&#34;符号。该类的目的是使用AVL TreeMaps构建字典。
答案 0 :(得分:2)
尝试map<string, Words*>
。
但你可能想重新考虑使用裸指针。
class Words
{
std::map<std::string, std::shared_ptr<Words>> synonyms;
std::map<std::string, std::map<std::string, std::shared_ptr<Words>>> translations;
};