热门标签 | HotTags
当前位置:  开发笔记 > IOS > 正文

c++vector对象相关总结

这篇文章主要介绍了c++vector对象的相关资料,帮助大家更好的理解和学习使用c++,感兴趣的朋友可以了解下

  下面随笔讲解c++ vector对象。

vector对象

  为什么需要vector?

  • 封装任何类型的动态数组,自动创建和删除。
  • 数组下标越界检查。
  • 封装的如ArrayOfPoints也提供了类似功能,但只适用于一种类型的数组。

vector对象的定义

vector<元素类型> 数组对象名(数组长度);

例:

    vector arr(5)
    建立大小为5的int数组

vector对象的使用

对数组元素的引用

与普通数组具有相同形式:

vector对象名 [ 下标表达式 ]

vector数组对象名不表示数组首地址

  • 获得数组长度
  • 用size函数

数组对象名.size()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//例 vector应用举例
 
#include <iostream>
 
#include <vector>
 
using namespace std;
 
//计算数组arr中元素的平均值
 
double average(const vector<double> &arr)
 
{
 
  double sum = 0;
 
  for (unsigned i = 0; i<arr.size(); i++)=""   sum="" +="arr[i];"   return="" sum="" arr.size();="" }="" int="" main()="" {=""   unsigned="" n;=""   cout="" <<"n=";
 
  cin >> n;
 
  vector<double> arr(n); //创建数组对象
 
  cout <<" please="" input="" "="" <<n="" <<"="" real="" numbers:"="" <<endl;=""   for="" (unsigned="" i="0;" <n;=""     cin="">> arr[i];
 
  cout <<"Average = " <<average(arr) <<endl;=""   return="" 0;="" }<="" pre="">
</average(arr)></arr.size();></double></vector></iostream>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//基于范围的for循环配合auto举例
 
#include <vector>
 
#include <iostream>
 
int main()
 
{
 
  std::vector<int> v = {1,2,3};
 
  for(auto i = v.begin(); i != v.end(); ++i)
 
    std::cout <<*i <<std::endl;   for(auto="" e="" :="" v)=""     std::cout="" <<e="" <<std::endl;="" }<="" pre="">
</std::endl;></int></iostream></vector>

以上就是c++ vector对象相关总结的详细内容,更多关于c++ vector对象的资料请关注其它相关文章!


推荐阅读
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • 本文介绍如何在 Xcode 中使用快捷键和菜单命令对多行代码进行缩进,包括右缩进和左缩进的具体操作方法。 ... [详细]
  • 如何在PHPcms网站中添加广告
    本文详细介绍了在PHPcms网站后台添加广告的方法,涵盖多种常见的广告形式,如百度广告和Google广告,并提供了相关设置的步骤。同时,文章还探讨了优化网站流量的SEO策略。 ... [详细]
  • 当iOS设备越狱后,某些插件可能会导致系统崩溃(白苹果)。此时,可以通过进入安全模式来排查并删除有问题的插件。本文将详细介绍如何通过特定按键组合进入不加载MobileSubstrate的安全模式,并提供相关背景知识。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • C++: 实现基于类的四面体体积计算
    本文介绍如何使用C++编程语言,通过定义类和方法来计算由四个三维坐标点构成的四面体体积。文中详细解释了四面体体积的数学公式,并提供了两种不同的实现方式。 ... [详细]
  • 本文介绍如何通过Windows批处理脚本定期检查并重启Java应用程序,确保其持续稳定运行。脚本每30分钟检查一次,并在需要时重启Java程序。同时,它会将任务结果发送到Redis。 ... [详细]
  • 如何优化2060显卡设置以提升《Apex英雄》游戏体验
    《Apex英雄》作为一款热门的战术竞技游戏,吸引了大量玩家。本文将探讨如何通过优化GeForce RTX 2060显卡设置,确保在《Apex英雄》中获得最佳性能和流畅的游戏体验。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 本文介绍如何通过SQL查询从JDE(JD Edwards)系统中提取所有字典数据,涵盖关键表的关联和字段选择。具体包括F0004和F0005系列表的数据提取方法。 ... [详细]
  • 如何高效创建和使用字体图标
    在Web和移动开发中,为什么选择字体图标?主要原因是其卓越的性能,可以显著减少HTTP请求并优化页面加载速度。本文详细介绍了从设计到应用的字体图标制作流程,并提供了专业建议。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 本文将详细介绍在Windows 7环境下,检查U盘启动盘是否制作成功的多种方法,包括通过BIOS设置和使用模拟启动工具。 ... [详细]
author-avatar
再见vivian
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有