新手错误求指正
//读入一段文本到vector对象,每个单词存储为vector中的一个元素。
//把vector对象中每个单词转化为大写字母。
//输出vector对象中转化后的元素,每8个单词为一行输出
#include <iostream>
#include <string>
#include <vector>
#include <cctype>
using namespace std;
int main()
{
vector<string> svec;
string str;
//计入文本到vector对象
cout << "Enter text Ctrl+Z to end:" <<endl;
while(cin<<str)
svec.push_back(str);
//将vector对象中每个单词转化为大写字母,并输出
if (svec.size()==0) {
cout<< "No string?!" << endl;
return -1;
}
cout<< "Transformed elements from the vector:"<<endl;
for (vector<string>::size_type ix=0;ix != svec.size();++ix)
{for(string::size_type index=0;index != svec[ix].size();++index)
if(islower[svec[ix][index]])
//单词中下标为index的字符为小写字母
svec[ix][index]=toupper(svec[ix][index]);
cout << svec[ix] << " ";
if((ix+1)%8<0) //每8个单词为一行输出
cout << endl;
}
return 0;
}
错误:vector(3-14).cpp(17) : error C2784: 'class std::basic_ostream<_E,_Tr> &__cdecl std::operator <<(class std::basic_ostream<_E,_Tr> &,const class std::basic_string<_E,_Tr,_A> &)' : could not deduce template argument for 'c
lass std::basic_ostream<_E,_Tr> &' from 'class std::basic_istream<char,struct std::char_traits<char> >'
跪求指点!!!!!!
[解决办法]
while(cin<<str)
->
while(cin>>str)
[解决办法]