error C2664: 'void __thiscall std::vector<class std::basic_string<char,struct std::char_traits<char>

#include<list>#include<vector>#include<string>#include<iostream>usingnamespacestd;int... #include <list>
#include <vector>
#include <string>
#include <iostream>
using namespace std;
int main()
{
char* word[] = {"marry", "Tom", "Bob", "Alice"};
vector<string> str1;
list<char*> str2(word, word+4);
str1.assign(str2.begin(), str2.end());
for(list<char*>::iterator it1 = str2.begin(); it1 != str2.end(); ++it1)
{
cout << *it1 << endl;
}
for(vector<string>::iterator it2 = str1.begin(); it2 != str1.end(); ++it2)
{
cout << *it2 << endl;
}
return 0;
}
展开
 我来答
binglink
2012-05-02 · TA获得超过1101个赞
知道小有建树答主
回答量:639
采纳率:0%
帮助的人:461万
展开全部
楼上正确, 这个问题是因为 VC6对C++对支持不完全.

楼主你的代码本身没问题. 是VC6的问题.
你或者按楼上那位大侠的方法, 或者改用VC2003以后的版本
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ssilspro
推荐于2018-03-22 · TA获得超过2625个赞
知道大有可为答主
回答量:1148
采纳率:0%
帮助的人:1714万
展开全部
//str1.assign(str2.begin(), str2.end()); ///你用的VC6?
copy(str2.begin(),str2.end(),back_inserter(str1));
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式