目前我的C++程式無法輸入空白,若改用輸入空白的方式程式呈現就會出現問題。
請看我的語法:
#include <cstdlib>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
void printVec(const vector<string>&);
void display();
int main()
{
vector<string> teststrings;
string string1;
int choice1;
do
{
display();
cin>>choice1;
switch (choice1)
{
case 1:
cout << "請輸入字串: "<<endl;
cin>>string1;
//getline(cin,string1);
teststrings.push_back (string1);
break;
case 2:
if(teststrings.size()>0)
{
teststrings.erase (teststrings.begin ());
printVec(teststrings);
}
else
cout<<"no elment can display"<<endl;
break;
case 3:
if(teststrings.size()>0)
{
teststrings.pop_back();
printVec(teststrings);
}
else
cout<<"no elment can display"<<endl;
break;
}while(choice1!=0);
system("pause");
return 0;
}
void display()
{
cout<<"---------------------------------------------------"<<endl;
cout<<"請選擇清單內的項目,請輸入號碼:"<<endl;
cout<<"1.增加一個字串"<<endl;
cout<<"2.呈現與刪除陣列的第一個項目"<<endl;
cout<<"3.呈現與刪除陣列最後一個項目"<<endl;
cout<<"0.離開"<<endl;
cout<<"---------------------------------------------------"<<endl;
}
void printVec(const vector<string>& v)
{
for (vector<string>::const_iterator iter = v.begin();iter != v.end(); ++iter)
{
cout << *iter << endl;
}
}
請問程式碼哪一部份有問題呢?謝謝!