如何将vector<string>中的某一个转化为string
如果直接写str=vec[n]会报错conversionfrom‘std::vector<std::basic_string<char>>’tonon-scalartyp...
如果直接写str=vec[n]会报错
conversion from ‘std::vector<std::basic_string<char> >’ to non-scalar type ‘std::string {aka std::basic_string<char>}’ requested 展开
conversion from ‘std::vector<std::basic_string<char> >’ to non-scalar type ‘std::string {aka std::basic_string<char>}’ requested 展开
1个回答
展开全部
你确定你创建vector的时候,参数类型是string,我这边试验没有问题。
程序主体为:
void testprogram()
{
vector<string> svec;
svec.push_back("Hello");
svec.push_back("Hi");
svec.push_back("How are you");
svec.push_back("I am fine");
svec.push_back("Thank you");
for (int i = 0; i < svec.size(); i++)
cout << svec[i] << endl;
string str_out;
str_out = svec[3];
cout << "str_out is "<<str_out << endl;
}
结果为:
追问
我用的vector 是指针
vector *a;
a=new vector;
a->push_back("abc");
string c;
c=a[0];
cout<<c;
然后 c=a[0];这一行就报错了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询