我正在开发一个跟踪字符串中字母频率的应用程序。为此,我创建了以下结构
struct MessageLetter{
char letter;
int count;
MessageLetter(char letter, int freq)
: letter(letter), count(freq)
{}
};
现在我正在尝试创建一个stl :: map,如下所示......
std::map<std::string, MessageLetter> lList;
for(int i = 0; i < output.length(); i++){
std::cout << i << output[i] << std::endl;
if(lList.find(output[i]) == lList.end()){
std::cout << "Letter not found" << std::endl;
MessageLetter m = {output[i],1};
lList[output[i]] = m;
}
else{
std::cout << "Letter found" << std::endl;
}
}
当我尝试编译时,我得到以下内容......
test.cpp:95:8: error: no template named 'map' in namespace 'std'; did you mean 'max'?
std::map<std::string, MessageLetter> lList;
我是c ++的新手,所以任何指导都会很棒。如果这是重复,我将很乐意删除。如果需要,将提供任何其他信息(C ++版本等)。这最终将成为原生的Android应用程序。
答案 0 :(得分:45)
#include <map>
问题解决了。