C++ 模板参数2无效
我不断发现以下错误:C++ 模板参数2无效,c++,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;
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;
};
类字{
地图同义词;
地图翻译;
};
我不太明白是什么使它成为一个无效的论点。错误箭头指向“>”符号。该类的目的是使用AVL树映射构建词典。尝试map
但您可能需要重新考虑使用裸指针
class Words
{
std::map<std::string, std::shared_ptr<Words>> synonyms;
std::map<std::string, std::map<std::string, std::shared_ptr<Words>>> translations;
};
类词
{
地图同义词;
地图翻译;
};
试试map
但您可能需要重新考虑使用裸指针
class Words
{
std::map<std::string, std::shared_ptr<Words>> synonyms;
std::map<std::string, std::map<std::string, std::shared_ptr<Words>>> translations;
};
类词
{
地图同义词;
地图翻译;
};
它可能应该是单词*
。这看起来不是一个合理的类来表示单个单词或整个词典。我不认为您会出现这些错误-您没有第22行或第21行。它可能应该是单词*
。这看起来不是一个合理的类来表示任何一个单词一个单词或一整本字典。我不认为你有这些错误——你的字典没有第22行或第21行。