c++ - 尝试对字符串使用 += 运算符时,如何解决 C++ 中的错误“不提供调用运算符”?
问题描述
我正在研究字符串向量和字符串映射以及 int 以打印直方图。
我现在需要做的是返回一个字符串计数,从最频繁到不太频繁的元素。到目前为止,这是我遇到问题的代码部分:
string histogram( const vector<string> &v) {
string st = "";
map<vector<string>, int> h;
for(auto ite = v.begin(); ite!= v.end(); ite++ ) {
if(h.find(v) == h.end()) {
h[v] = 1;
} else {
h[v]++;
}
}
for (auto it: h) {
st += "[" + it.first + ":" + it.second + "]";
}
return st;
}
我不断收到的错误与此行有关:
st += "[" + it.first + ":" + it.second + "]";
我一直在在线检查如何修复此错误或我缺少什么,因为我仍然无法确切地看到如何与字符串的运算符一起工作。
解决方案
推荐阅读
- android - Android Samsung ACTION_IMAGE_CAPTURE 未保存为正确的文件名
- c# - 如何使用LINQ C#根据另一个字符串更改字符串内容
- ios - 代码签名错误 - 验证 CODE_SIGN_ENTITLEMENTS 的值
- maven - maven-bundle-plugin:4.1.0:install on jenkins 挂起
- java - 如何使用 IntelliJ IDEA 将远程调试正确连接到 Tomcat?
- php - 如何在控制器的 Symfony 中添加注释?
- css - Ionic 3 身高问题
- python-3.x - 如何仅保留 pdf 文本或图像的注释部分?
- javascript - 通过 Firebase Cloud 函数调用第三方 API(使用 Blaze 计划)。反应/还原
- c# - 你可以使用构造函数作为条件而不调用它们吗