当前位置: 首页 > news >正文

提供免费建网站的网创业商机

提供免费建网站的网,创业商机,做网站需要撑握哪些技术,wordpress伪静态链接博主首页#xff1a; 有趣的中国人 专栏首页#xff1a; C专栏 本篇文章主要讲解vector使用的相关内容 1. vector简介 vector 是 C 标准库中的一个容器类模板#xff0c;它提供了动态数组的功能#xff0c;可以方便地管理和操作元素的集合。下面是关于 vector 的一些基本信… 博主首页 有趣的中国人 专栏首页 C专栏 本篇文章主要讲解vector使用的相关内容 1. vector简介 vector 是 C 标准库中的一个容器类模板它提供了动态数组的功能可以方便地管理和操作元素的集合。下面是关于 vector 的一些基本信息 头文件 vector 定义在 头文件中使用时需要包含该头文件。使用命名空间 vector 类定义在 std 命名空间中因此需要使用 std::vector 或者在代码开头添加 using namespace std; 来简化使用。容器特点 vector 是一个序列式容器它以动态数组的形式存储元素并提供了在数组末尾快速插入和删除元素的功能。元素类型 vector 可以存储几乎任何类型的元素例如整数、浮点数、对象或其他容器只要这些类型满足一定的要求例如可移动构造函数和析构函数等。动态大小 vector 允许动态分配和释放内存可以根据需要动态调整大小而无需手动管理内存。访问元素 可以使用下标运算符 [] 或者 at() 方法访问 vector 中的元素。插入和删除 可以使用 push_back() 方法将元素插入到 vector的末尾使用 pop_back() 方法删除末尾的元素还可以使用 insert() 方法在指定位置插入元素使用 erase() 方法删除指定位置的元素。动态调整大小 可以使用 resize() 方法动态调整 vector 的大小增加或减少元素数量还可以使用 reserve() 方法预留一定的容量避免频繁的重新分配内存。遍历元素 可以使用迭代器或者基于范围的 for 循环遍历 vector 中的元素。其他操作 vector 还提供了许多其他有用的方法例如获取大小、判断是否为空、清空容器、交换容器等。 vector 是 C 中常用的容器之一它提供了灵活且高效的动态数组功能适用于各种场景和用途。 3. vector iterator 的使用 类似的vector的迭代器也分为正向和反向const和非const即 iteratorreverse_iteratorconst_iteratorconst_reverse_iterator iterator 示例 void vector_test2() {vectorint v;v.push_back(1);v.push_back(2);v.push_back(3);v.push_back(4);v.push_back(5);vectorint::iterator it v.begin();while (it ! v.end()){cout *it ;it;}cout endl;it v.begin();// 可修改while (it ! v.end()){*it;it;}it v.begin();while (it ! v.end()){cout *it ;it;}cout endl;}reverse_iterator 示例 void vector_test3() {vectorint v;v.push_back(1);v.push_back(2);v.push_back(3);v.push_back(4);v.push_back(5);vectorint::reverse_iterator it v.rbegin();while (it ! v.rend()){cout *it ;it;}cout endl;it v.rbegin();while (it ! v.rend()){*it;it;}it v.rbegin();while (it ! v.rend()){cout *it ;it;}cout endl; }const_iterator 示例 void vector_test4() {const vectorint v(10,10);vectorint::const_iterator it v.begin();while (it ! v.end()){cout *it ;it;}cout endl;// 不可修改/*it v.begin();while (it ! v.end()){*it;it;}*/ }const_reverse_iterator 示例 void vector_test5() {const vectorint v(10, 66);vectorint::const_reverse_iterator it v.rbegin();while (it ! v.rend()){cout *it ;it;}cout endl; }3. vector 容量操作 3.1 vector 空间增长问题 对于 vector 的容量操作重点有以下几个 sizecapacityemptyresize 可以用以下代码查看 vector 的空间增长 void TestVectorExpand() {size_t sz;vectorint v;sz v.capacity();cout making v grow:\n;for (int i 0; i 100; i){v.push_back(i);if (sz ! v.capacity()){sz v.capacity();cout capacity changed: sz \n;}} }vs下使用的STL基本是按照1.5倍方式扩容。 3.2 reserve 提前预留空间 我们知道频繁扩容会对效率大大提高因此当我们知道需要使用多少空间的时候应当提前预留空间用 reserve 函数即可。 void TestVectorExpand() {size_t sz;vectorint v;sz v.capacity();v.reserve(100); // 提前将容量设置好可以避免一遍插入一遍扩容cout making v grow:\n;for (int i 0; i 100; i){v.push_back(i);if (sz ! v.capacity()){sz v.capacity();cout capacity changed: sz \n;}} }3.3 size()、capacity()、resize() void vector_test6() {vectorint v(100, 66);cout v.size() endl;cout v.capacity() endl;// 不会缩容v.resize(50);cout v.capacity() endl;// 按照内存对齐的方式给空间v.resize(120);cout v.size() endl;cout v.capacity() endl; }4.vector 的增删改查 注意这里的insert() 有三种重载形式而且在算法库 iterator insert(iterator pos, const T value); iterator insert(iterator pos, size_type count, const T value); iterator insert(iterator pos, InputIterator first, InputIterator last); pos 是插入的位置类型为迭代器表示插入元素的位置。value 是要插入的元素值。count 是要插入的元素个数。first 和 last 是迭代器范围表示要插入的元素序列的起始和结束位置。 void vector_test7() {vectorint v;v.push_back(1);v.push_back(2);v.push_back(3);v.push_back(4);v.push_back(5);for (auto e : v){cout e ;}cout endl;//vectorint::iterator pos find(v.begin(), v.end(), 3);auto pos find(v.begin(), v.end(), 3);if (pos ! v.end()){v.insert(pos, 30);}// 头插v.insert(v.begin(), 0);for (auto e : v){cout e ;}cout endl;v.insert(v.begin() 2, 0);for (auto e : v){cout e ;}cout endl;string s(abcd);v.insert(v.begin(), s.begin(), s.end());for (auto e : v){cout e ;}cout endl; }
http://www.pierceye.com/news/914383/

相关文章:

  • 研究生院 网站 建设广州网站建设策划
  • 企业建站找哪个公司网站退出率
  • 汕头企业建站系统高密微网站建设
  • 企业建设网站个人总结报告中山蓝图科技网站建设
  • 网站规划作品邯郸免费发布信息平台
  • html5手机网站源码网站备案要如何取消
  • 商城建设网站制作微信网站模板源码
  • 品牌型网站制作公司想做百度推广找谁
  • 浙江建设监理协会官方网站网站建设的公司选择哪家好
  • 优秀网站及网址沙漠风网站建设6
  • 做数据表格的网站出口网站建设方案
  • 广州网站建设信息科技有限公司福建省亿力电力建设有限公司网站
  • 电子商务网站开发 ppt湛江做网站报价
  • 网站建设框架图wordpress 固定链接设置
  • 内蒙古工程建设协会网站seo文章外包
  • 网站建设免费的服务器商丘推广公司
  • 网站设计大概价格设计网络平台的公司
  • phpcms中的网站介绍页中文去掉wordpress
  • 网站的建设心得怎么做网站淘宝转换工具
  • 做网站1天转多钱wordpress 分享插件
  • 淘宝网站建设单子好接吗朝阳区办公
  • html5网站建设平台怎么给网站添加图标
  • 中文域名网站网站制作wap页面
  • wordpress站内全文检索一个人完成网站建设
  • wordpress自定义重用结构北京seo怎么优化
  • 苏州做网站专业的公司vs2008怎么做网站
  • 效果好的徐州网站建设休闲食品网站建设策划书
  • 如何发布自己的网站wordpress 4.9.6 下载
  • 织梦网站打开慢企业咨询师资格证
  • 蓬莱网站建设哪家好广州白云网站建设