模板参数2无效

时间:2018-03-19 15:43:20

标签: c++

我一直收到以下错误:

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构建字典。

1 个答案:

答案 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;
};