VS 2010 不能将参数 1 从“char”转换为“const std::basic_string<_Elem,_Traits,_Ax> &”

weixin_43552948 2019-05-04 02:32:40
菜鸟一枚!!求解答!!


主函数:
int _tmain(int argc, _TCHAR* argv[])
{
ifstream ifs_str("F:/title.txt");
ofstream ofs_str("F:/out_title.txt");

hash_map<const int,vector<string>>map_1;
vector<string>vec_1;
hash_map<string,set<int>>map_2;
set<int>set_2;


string str_line;
while(getline(ifs_str,str_line)){
istringstream is_str(str_line);
int k;
string v;
is_str>>k;
is_str>>v;
vec_1.push_back(v);
map_1.insert(hash_map<int,vector<string>>::value_type(k,vec_1));
}

int i, j;
for (i = 0; i <= vec_1.size() ; i++) {
for(j = 0; j <= vec_1.size() ; j++)
if (!map_1.count(vec_1[i][j])){
for(hash_map<const int,vector<string>>::iterator it =map_1.begin(); it!= map_1.end();++it)
set_2.insert(it->first);
}
map_2.insert(hash_map<string,set<int>>::value_type(vec_1[i][j],set_2));
}

for(hash_map<string,set<int>>::iterator it_1 =map_2.begin(); it_1 != map_2.end(); ++it_1){
ofs_str<<it_1->first<<"\t";
for(set<int>::iterator it_set = it_1->second.begin(); it_set != it_1->second.end(); ++it_set)
ofs_str<<*it_set<<"\t";
ofs_str<<endl;
}
ifs_str.close();
ofs_str.close();
}




报错代码:template<class _Other1,
class _Other2>
_Pair_base(_Other1&& _Val1, _Other2&& _Val2)
: first(_STD forward<_Other1>(_Val1)),
second(_STD forward<_Other2>(_Val2))
{ // construct from moved values
}

报错内容:“std::basic_string<_Elem,_Traits,_Ax>::basic_string(const std::basic_string<_Elem,_Traits,_Ax> &)”: 不能将参数 1 从“char”转换为“const std::basic_string<_Elem,_Traits,_Ax> &”
报错显示在utility文件中!!各位大神怎么解决!!
...全文
191 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧