给vector对象添加元素的方法
2024-08-29 11:59:35
#include<iostream>
#include<vector> using namespace std; int main()
{
//初始化10个元素,每个值都为0
vector<int> fvec();
//输出
for(vector<int>::size_type ix=;ix!=fvec.size();ix++)
cout<<fvec[ix];
cout<<endl; //下标法赋值 0-9
for(vector<int>::size_type ix=;ix!=fvec.size();ix++)
fvec[ix]=ix;
//输出
for(vector<int>::size_type ix=;ix!=fvec.size();ix++)
cout<<fvec[ix];
cout<<endl; return ;
}
从上面可以看出,如果想要用下标法添加或者输出元素,数据的存储空间必须存在,无法动态的添加元素。
动态添加元素的方法,是用vector对象的方法:push_back()
#include<iostream>
#include<vector>
#include <string> using namespace std; int main()
{
//只有一个对象一个值
vector<int> ivec;
vector<string> strvec; //现在必须动态添加元素
for(vector<int>::size_type ix=;ix!=;ix++)
ivec.push_back(ix);
for(vector<int>::size_type ix=;ix!=ivec.size();ix++)
cout<<ivec[ix];
cout<<endl;
string word;
while(cin >> word)
{
strvec.push_back(word);
}
for(vector<int>::size_type ix=;ix!=strvec.size();ix++)
cout<<strvec[ix]<<endl;
return ;
}
注意:字符串输入结束符为 ctrl+z 回车。
使用迭代器:
#include<iostream>
#include<vector> using namespace std; int main()
{
vector<int> ivec();
//定义迭代器类型
vector<int>::iterator iter;
vector<int>::size_type ix;
//现在必须动态添加元素
for(iter=ivec.begin(),ix=;iter!=ivec.end();iter++,ix++)
*iter=ix;
//输出
for(vector<int>::size_type ix=;ix!=ivec.size();ix++)
cout<<ivec[ix];
cout<<endl;
return ;
}
最新文章
- IOS关于LKDBHelper实体对象映射插件运用
- 脏检查and刷新机构
- xlistview的java(脚)
- Castle ActiveRecord学习实践
- jQ全选效果
- C语言入门(6)——C语言常用数学函数
- 集成支付宝-iOS
- C# 中文在URL中的编码
- Local Binary Convolutional Neural Networks ---卷积深度网络移植到嵌入式设备上?
- nginx加权轮询和ip_hash
- Gradle 笔记——Java构建入门
- navicat 远程访问mariadb失败,修改配置如下
- KeyguardSliceView.java
- linux samba smb 在客户端无法连接使用
- activemq 的那些事1
- 6-具体学习git--分支冲突,rebase|| stash 临时修改
- 2_C语言中的数据类型 (三)原码、反码、补码
- Sprint 3.0
- 微信分享BUG
- Maven assembly插件进行自定义构建