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

常州云计算网站建设百度竞价排名又叫

常州云计算网站建设,百度竞价排名又叫,健康成都官微最新消息,河北做it的网站1、vector容器 1.1性质 a)该容器的数据结构和数组相似,被称为单端数组。 b)在存储数据时不是在原有空间上往后拓展,而是找到一个新的空间,将原数据深拷贝到新空间,释放原空间。该过程被称为动态拓展。 vec…

1、vector容器

1.1性质

        a)该容器的数据结构和数组相似,被称为单端数组

        b)在存储数据时不是在原有空间上往后拓展,而是找到一个新的空间,将原数据深拷贝到新空间,释放原空间。该过程被称为动态拓展

        

        vector迭代器支持随机访问。

1.2 构造函数

	std::vector<int> vec1{};//无参构造std::vector<int> vec2(3, 4);//初始化3个元素4到int型vector中std::vector<int> vec3(vec2.begin(), vec2.end());//迭代器初始化std::vector<int> vec4(vec3);//拷贝构造

 注意:拷贝构造函数中为深拷贝

1.3 赋值操作

	std::vector<float> vec1 = temp_vec;//operator=,深拷贝形式std::vector<float> vec2;vec2.assign(3, 8); // n个elem赋值vec2.assign(vec1.begin(), vec1.end());//区间赋值,这里是区间是迭代器

 1.4 vector容量和大小

void Print_vec(std::vector<float>& vec) {for (auto i : vec) {cout << i << " ";}cout << endl;
}
int main() {//初始化vectorstd::vector<float> vec(5, 8);std::cout << vec.empty() << std::endl; ;//判断是否为空std::cout << vec.size() << std::endl; //输出vector容器中元素数量std::cout << vec.capacity() << std::endl; //输出vector容器中容量vec.resize(10); //重新指定vec的元素数量,多余的默认0填充vec.resize(15, 3);//重新指定vec的元素数量的重载,可以指定填充值Print_vec(vec);system("pause");return 0;
}

1.5 vector插入删除

1.6vector数据存取

 

 1.7 vector互换容器swap

        目的:实现两个容器内容互换。

        实际用途:实现容器容量的收缩,减少内存浪费。

        (说明:当一个大容量的vector只有少量元素时,只使用resize重新指定其元素数量并不会改变其容量大小,而使用一个小容量的vector与其进行内容互换的实质是将两个容器的地址互换,此时使用的小容量vector是匿名类型,系统会自动把多余的容量内存释放。)

目的示例:

void Print_vec(std::vector<float>& vec) {for (auto i : vec) {cout << i << " ";}cout << endl;
}
int main() {//初始化vectorstd::vector<float> vec1(5, 8);std::vector<float> vec2(9, 4);Print_vec(vec1);Print_vec(vec2);vec1.swap(vec2);Print_vec(vec1);Print_vec(vec2);system("pause");return 0;
}

实际用途示例:

	std::vector<float> vec1(10000, 8);std::vector<float> vec2(9, 4);std::cout << vec1.capacity() << std::endl;std::cout << vec1.size() << std::endl;vec1.swap(vec2);std::cout << vec1.capacity() << std::endl;std::cout << vec1.size() << std::endl;

 1.8 vector预留空间

        目的:减少vector在动态拓展时的拓展次数,即减少从原空间拷贝到新空间的次数。

        接口:vec.reserve(r_size)

int main() {//初始化vector//统计开辟空间次数,利用指针指向vec的首地址,当指针地址改变则说明开辟了一次空间int* p = NULL;int num = 0;std::vector<int> vec;vec.reserve(10000);for (int i = 0; i < 10000; ++i) {vec.push_back(i);if (p != &vec[0]) {p = &vec[0];num++;}}std::cout << num << std::endl;system("pause");return 0;
}

预留空间与不预留空间的动态拓展次数对比:

 

 

http://www.tj-hxxt.cn/news/64049.html

相关文章:

  • html网站开发 工具灰色行业seo
  • 长宁做网站价格网站seo顾问
  • 福州住房和建设局网站账号权重查询入口
  • aitt网站建设中百度的广告怎么免费发布
  • 厦门有什么好企业网站经典软文案例200字
  • 做仿站如何修改网站管理权限360优化大师官方最新
  • 翔安区建设局网站成都多享网站建设公司
  • 福建省效能建设网站百度灰色关键词代发
  • 织梦自定义表单做网站在线留言百度推广登录页面
  • 广安市国土资源局网站建设宁波seo网络推广优质团队
  • 哈尔滨网站建设索q.479185700网络推广需要花多少钱
  • 网站的404如何做seo优化网站百度技术
  • 成都外贸网站建设长沙seo培训班
  • 邓亚萍近况 做网站败光20亿淘宝搜索指数
  • 全球十大咨询公司搜索引擎优化排名培训
  • 济南做网站的网络公司成都seo外包
  • 免费营销型企业网站模板市场营销推广活动方案
  • 自己建设网站怎么做外链代发平台
  • 手机套 东莞网站建设企业培训心得
  • 万州网站建设多少钱黄页网站推广服务
  • h网站建设推广渠道有哪些平台
  • 常营网站建设公司网络安全培训最强的机构
  • 淄博百度网站制作给你一个网站怎么优化
  • 免费的库存管理软件有哪些seo监控
  • icp备案添加网站活动策划方案
  • 家装平台南京百度seo排名优化
  • 中国站长之家cps广告是什么意思
  • 盐城网站定制今日特大新闻新事
  • 郑州郑州网站建设河南做网站公司哪家好镇江关键字优化品牌
  • 如何查看一个网站的浏览量百度网页收录