在字符串拼接的时候加入整形,遇到此错误。
#include <iostream>
#include <string>
using namespace std;
int main()
{
int saveImageCount = 123;
int rtkEventCount = 123;
string strSend ="{\n\t" "\"imageCount\"" + ':' + std::to_string(saveImageCount) + ',' + "\n\t" +
"\"rtk-eventCount\"" + ':' + 123 + ',' + "\n" + "}";
cout << strSend << endl;
return 0;
}
编译报错:
manual-json.cpp:12:48: error: no match for ‘operator+’ (operand types are ‘std::__cxx11::basic_string<char>’ and ‘int’)
11 | string strSend ="{\n\t" "\"imageCount\"" + ':' + std::to_string(saveImageCount) + ',' + "\n\t" +
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 | "\"rtk-eventCount\"" + ':' + 123 + ',' + "\n" + "}";
| ~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~
| | |
| | int
| std::__cxx11::basic_string<char>
修复:
string strSend ="{\n\t" "\"imageCount\"" + ':' + std::to_string(saveImageCount) + ',' + "\n\t" +
"\"rtk-eventCount\"" + ':' + std::to_string(rtkEventCount) + ',' + "\n" + "}";
把数字转换为字符串。