我只是写了一些C++代码,大致如下:—</p>
int i;
string out;
map<char, string>::const_iterator it;
for (i = 0; i < inp.size(); ++i) {
it = mydict.find(inp[i]);
if (it != mydict.end())
out += mydict[inp[i]];
else
out += inp[i];
}
我没有写很多 C++ 代码,我正在寻找改进的建议。我尝试了以下操作,但出现incompatible operand types ('mapped_type' (aka 'std::basic_string<char>') and 'char')
错误:
int i;
string out;
map<char, string>::const_iterator it;
for (i = 0; i < inp.size(); ++i) {
it = mydict.find(inp[i]);
out += (it != mydict.end() ? mydict[inp[i]] : inp[i]);
}
有什么建议可以纠正上述错误吗?或者有什么更好的编码方式的建议?