Bec*_*ter 0 c++ string cout vector
我创造了一个vector<string>持有strings,但是当我cout<<vec[0],我发现其中没有任何东西.为什么?
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> vec(10);
string s("123123");
vec.push_back(s);
cout<<vec[0]<<endl;
vector<string>::iterator it=vec.begin();
cout<<*it<<endl;
}
Run Code Online (Sandbox Code Playgroud)
vector<string> vec(10);
Run Code Online (Sandbox Code Playgroud)
此行定义了一个矢量vec与最初十个元素.
vec.push_back(s);
Run Code Online (Sandbox Code Playgroud)
这push_back是个11 个部件.
cout<<vec[0]<<endl;
Run Code Online (Sandbox Code Playgroud)
输出的第一个元素vector.与其他前十个一起进行了价值初始化的那个.
push_back顾名思义,插入容器的背面.insert像这样尝试开头:
vec.insert( vec.begin(), s );
Run Code Online (Sandbox Code Playgroud)
这应该给你正确的答案.
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |