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

公司网站 制作网络软文推广网站

公司网站 制作,网络软文推广网站,武汉网站建设公司哪里有,网站优化与seo2024.12.3 C vector 容器 C vector 容器 类比成数组 C 中的 vector 是一种序列容器,它允许你在运行时动态地插入和删除元素。 vector 是基于数组的数据结构,但它可以自动管理内存,这意味着你不需要手动分配和释放内存。 与 C 数组相比&a…

2024.12.3 C++ vector 容器

C++ vector 容器

类比成数组

C++ 中的 vector 是一种序列容器,它允许你在运行时动态地插入和删除元素。

vector 是基于数组的数据结构,但它可以自动管理内存,这意味着你不需要手动分配和释放内存。

与 C++ 数组相比,vector 具有更多的灵活性和功能,使其成为 C++ 中常用的数据结构之一。

vector 是 C++ 标准模板库(STL)的一部分,提供了灵活的接口和高效的操作。

基本特性:

  • 动态大小vector 的大小可以根据需要自动增长和缩小。
  • 连续存储vector 中的元素在内存中是连续存储的,这使得访问元素非常快速。
  • 可迭代vector 可以被迭代,你可以使用循环(如 for 循环)来访问它的元素。
  • 元素类型vector 可以存储任何类型的元素,包括内置类型、对象、指针等。

使用场景:

  • 当你需要一个可以动态增长和缩小的数组时。
  • 当你需要频繁地在序列的末尾添加或移除元素时。
  • 当你需要一个可以高效随机访问元素的容器时。

要使用 vector,首先需要包含 头文件:

#include <vector>

创建 Vector

创建一个 vector 可以像创建其他变量一样简单:

std::vector<int> myVector; // 创建一个存储整数的空 vector

这将创建一个空的整数向量,也可以在创建时指定初始大小和初始值:

std::vector<int> myVector(5); // 创建一个包含 5 个整数的 vector,每个值都为默认值(0)
std::vector<int> myVector(5, 10); // 创建一个包含 5 个整数的 vector,每个值都为 10
std::vecter<int> myVector(5);    //5
std:vector<int> myVector(5,10); //5 10

或:

std::vector<int> vec; // 默认初始化一个空的 vector
std::vector<int> vec2 = {1, 2, 3, 4}; // 初始化一个包含元素的 vector
std::vector<int> vec2={1,2,3,4}

添加元素

可以使用 push_back 方法向 vector 中添加元素:

myVector.push_back(7); // 将整数 7 添加到 vector 的末尾
myvector.push_back(7);

访问元素

可以使用下标操作符 [] 或 at() 方法访问 vector 中的元素:

int x = myVector[0]; // 获取第一个元素
int y = myVector.at(1); // 获取第二个元素
int x = myVector[0];
int y = myVector.at(1);

获取大小

可以使用 size() 方法获取 vector 中元素的数量:

int size = myVector.size(); // 获取 vector 中的元素数量
int size = myVector.size();C

迭代访问

可以使用迭代器遍历 vector 中的元素:

for (auto it = myVector.begin(); it != myVector.end(); ++it) {std::cout << *it << " ";
}
//为什么这里有个星号呢?
//回答:迭代器本身只是一个指针,它并不直接存储数据。而 *it 会返回 it 所指向的元素的引用,允许你访问该元素的值。	
//指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。 *it 是 解引用 操作符
for(auto it = myVector.begin();it!=myVector.end();++it){std::cout << *it << " ";
}

或者使用范围循环:

for (int element : myVector) {std::cout << element << " ";
}
for(int element : myVectot){std:cout << element << " ";
}

删除元素

可以使用 erase() 方法删除 vector 中的元素:

myVector.erase(myVector.begin() + 2); // 删除第三个元素
myVector.erase(myVector.begin() + 2);

清空 Vector

可以使用 clear() 方法清空 vector 中的所有元素:

myVector.clear(); // 清空 vector
myVector.clear(); // 清空 vector

综合实例

以下是一个完整的使用实例,包括创建 vector、添加元素、访问元素以及输出结果的代码:

#include <iostream>
#include <vector>int main() {// 创建一个空的整数向量std::vector<int> myVector;// 添加元素到向量中myVector.push_back(3);myVector.push_back(7);myVector.push_back(11);myVector.push_back(5);// 访问向量中的元素并输出std::cout << "Elements in the vector: ";for (int element : myVector) {std::cout << element << " ";}std::cout << std::endl;// 访问向量中的第一个元素并输出std::cout << "First element: " << myVector[0] << std::endl;// 访问向量中的第二个元素并输出std::cout << "Second element: " << myVector.at(1) << std::endl;// 获取向量的大小并输出std::cout << "Size of the vector: " << myVector.size() << std::endl;// 删除向量中的第三个元素myVector.erase(myVector.begin() + 2);// 输出删除元素后的向量std::cout << "Elements in the vector after erasing: ";for (int element : myVector) {std::cout << element << " ";}std::cout << std::endl;// 清空向量并输出myVector.clear();std::cout << "Size of the vector after clearing: " << myVector.size() << std::endl;return 0;
}

以上代码创建了一个整数向量,向其中添加了几个元素,然后输出了向量的内容、元素的访问、向量的大小等信息,接着删除了向量中的第三个元素,并输出删除元素后的向量。最后清空了向量,并输出清空后的向量大小。

输出结果为:

Elements in the vector: 3 7 11 5 
First element: 3
Second element: 7
Size of the vector: 4
Elements in the vector after erasing: 3 7 5 
Size of the vector after clearing: 0
http://www.yidumall.com/news/68139.html

相关文章:

  • 莱西做网站的北京网络优化推广公司
  • 触屏网站建设宁波百度推广优化
  • 网站一直维护意味着什么昆明网站开发推广公司
  • 公司宣传册页面设计模板google seo怎么优化
  • 免费域名注册和免费建站上海seo服务外包公司
  • 帮人做网站犯法搜索引擎分析论文
  • 深圳建设交易信息网站seo优化软件购买
  • seo系统oemseo诊断工具
  • 厦门模版网站“跨年”等关键词搜索达年内峰值
  • 简单网站制作实例佛山网络营销推广
  • 可以转app的网站怎么做的泉州全网营销
  • 武汉网站优化怎么做最近发生的热点事件
  • 小程序商城首页设计信息流优化师证书
  • 多商家商城优化网站怎么真实点击
  • 政府网站如何管理系统核心关键词和长尾关键词
  • 上海静安网站建设站长
  • 如何找枪手做网站国内十大搜索引擎
  • wordpress隐藏式列表windows优化大师卸载
  • 哪个网站能在线做司考题目百度精简版网页入口
  • 网站 app 哪个先做网上找客户有什么渠道
  • 二维码怎么做网站浙江seo外包费用
  • 做网站的怎么赚钱网站seo优化有哪些方面
  • 网站建设 联系我们汕头seo网站推广
  • 重庆营销网站建设公司广告营销方式有哪几种
  • 网站开发书籍郑州网站运营
  • 网站建设公司推广方案站长统计app网站
  • 建立网站定制cps广告联盟平台
  • 手机端网站建站公司网站设计哪家好
  • 西安跨境电商平台网站网络营销是什么意思?
  • 做的网站怎样评估价值seo排名快速刷