返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++标准库封装的vector数组
  • 496
分享到

C++标准库封装的vector数组

2024-04-02 19:04:59 496人浏览 独家记忆
摘要

目录1、创建和使用vector对象2、vector对象的引用 前言: 如果构建基本类型的数组或者自定义类型的数组,那么需要自己扩展数组的功能,还有很多需要自己解决的问题,比如需要防止

前言:

如果构建基本类型的数组或者自定义类型的数组,那么需要自己扩展数组的功能,还有很多需要自己解决的问题,比如需要防止数组越界问题。此时,可以采用c++标准库提供的vector模板,vector创建的对象包含众多封装好的函数,比如“对象名.size()”函数可以很方便的查看数组的大小。下面从定义、使用、做函数引用等方面分别进行记录,并讨论vector对象和数组的区别。

1、创建和使用vector对象

vector对象的创建和使用语法如下:

/// 创建
vector<类型>对象名(数组长度, 元素初值)

/// 取元素
对象名[下标]

/// 使用对象的函数
对象名.函数名()

创建vector对象需要指定的“类型”可以是基本数据类型或者是类类型,如果是基本数据类型可以使用固定数值进行初始化(所有元素的初值只能相同);如果“类型”是类类型,那么就会调用“默认构造函数”进行初始化。下面第一个例子为基本数据类型作为vector元素的例子:

/// 构建vector对象,指定数组长度为3,初值为666
vector<int>data(3, 666);

/// 取元素
printf("%d \n", data[1]);

/// 调用vector对象的函数
printf("%d \n", data.size());

第二个例子是类类型的情况,此时将会调用类的默认构造函数,用于初始化:

/// 自定义的Duck类
class Duck {
public:
    /// 默认构造函数
    Duck() { duckAge = 666; }
    int duckAge;
};

/// 创建Duck类型的vector对象
vector<Duck>ducks(3);
/// vector的元素为Duck对象,可以调用Duck对象的成员
printf("%d \n", ducks[1].duckAge);

2、vector对象的引用

vector对象和其它类型的对象在引用的定义和使用的规则相同,都采用先声明引用,再将引用指向某个对象,最后通过引用操作对象。

下面是声明vector类型的引用语法:

vector <类型名>&引用名;

使用引用作为函数参数时,最好定义常引用,防止对象被意外的更改:

void vectorSize(vector<int>&vec) {
    printf("%d \n", vec.size());
}

到此这篇关于C++标准库封装的vector数组的文章就介绍到这了,更多相关C++的 vector数组内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C++标准库封装的vector数组

本文链接: https://lsjlt.com/news/142092.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C++标准库封装的vector数组
    目录1、创建和使用vector对象2、vector对象的引用 前言: 如果构建基本类型的数组或者自定义类型的数组,那么需要自己扩展数组的功能,还有很多需要自己解决的问题,比如需要防止...
    99+
    2024-04-02
  • C++标准库封装vector数组的方法
    这篇文章主要讲解了“C++标准库封装vector数组的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++标准库封装vector数组的方法”吧!前言:如果构建基本类型的数组或者自定义类型...
    99+
    2023-06-29
  • C++STL标准库std::vector的使用详解
    目录1. 简介2. 使用示例3. 构造、析构、赋值3.1 std::vector::vector 构造函数3.2 std::vector::~vector 析构函数3.3 std::...
    99+
    2024-04-02
  • C++中STL标准库std::vector怎么用
    小编给大家分享一下C++中STL标准库std::vector怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1. 简介vector 是表示可以改变大小的数组的...
    99+
    2023-06-29
  • C++标准模版库之vector容器怎么使用
    今天小编给大家分享一下C++标准模版库之vector容器怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。vector容...
    99+
    2023-07-05
  • 用C标准数学库精确计算标准正态分布的CDF
    要使用C标准数学库精确计算标准正态分布的累积分布函数(CDF),可以使用标准库中的`erf()`函数。`erf()`函数返回一个以x...
    99+
    2023-09-26
    C
  • 详解C标准库堆内存函数
    目录概述不同操作系统Ansi C内存分配器实现方案有所不同内存碎片与碎片整理内存分配器的好坏标准void* malloc( size_t size )void free( void*...
    99+
    2024-04-02
  • C++的sstream标准库详细介绍
    C++的sstream标准库介绍 接下来我们继续看一下C++风格的串流控制 ,C++引入了ostringstream、istringstream、stringstream这三个类,要...
    99+
    2022-11-15
    sstream C++
  • C++11标准库bind函数应用教程
    目录bind 是什么?举个栗子1. bind 无参数的普通函数2. bind 1个参数的普通函数3. bind 多个参数的普通函数4. bind 多个参数的普通函数并打乱参数位置5....
    99+
    2024-04-02
  • C标准库堆内存函数的示例分析
    这篇文章主要为大家展示了“C标准库堆内存函数的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C标准库堆内存函数的示例分析”这篇文章吧。概述C标准库堆内存函数有4个:malloc、free...
    99+
    2023-06-15
  • C++标准库中模板化的例子?
    模板在 c++++ 标准库中的应用:vector 模板:用于存储和管理可动态增长的元素集合。map 模板:用于存储键值对,键可比较且值可任意类型。自定义模板类:允许创建可针对不同类型进行...
    99+
    2024-05-09
    c++ 模板化 键值对 标准库
  • vue如何封装自己的Svg图标组件库(svg-sprite-loader)
    目录vue封装自己的Svg图标组件库安装及配置方法vue使用svg封装图标组件,代替img图片提高性能可行性分析实践方案总结vue封装自己的Svg图标组件库 安装及配置方法 一、安装...
    99+
    2023-05-17
    vue封装Svg图标组件库 svg-sprite-loader vue Svg图标组件库
  • C语言标准库函数qsort怎么使用
    C语言标准库函数qsort可以用来对数组进行快速排序。qsort函数的原型如下:```cvoid qsort(void *base,...
    99+
    2023-08-25
    C语言 qsort
  • C语言标准库函数fread怎么使用
    C语言标准库函数fread用于从文件中读取数据。函数原型为:```csize_t fread(void *ptr, size_t s...
    99+
    2023-08-25
    C语言 fread
  • C语言标准库函数qsort(快速排序函数)
    qsort函数是C语言标准库中提供的一个快速排序函数。它的函数原型如下:```cvoid qsort(void *base, siz...
    99+
    2023-09-23
    C语言
  • C++11标准库函数begin和end怎么使用
    这篇文章主要介绍“C++11标准库函数begin和end怎么使用”,在日常操作中,相信很多人在C++11标准库函数begin和end怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++11标准库函数b...
    99+
    2023-06-19
  • C++ 标准库中有哪些常用的 STL 函数对象?
    c++++ stl 中提供了多种函数对象,可用于对元素进行比较、排序和操作。常见的函数对象包括用于升序排序的 less,用于降序排序的 greater,用于比较相等的 equal_to,...
    99+
    2024-04-25
    stl 函数对象 c++ 标准库
  • C++11标准库bind函数应用方法是什么
    这篇文章主要讲解了“C++11标准库bind函数应用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++11标准库bind函数应用方法是什么”吧!bind 是什么?bind 顾名思...
    99+
    2023-06-22
  • 一文带你快速了解C/C++标准库中的ptrdiff_t
    目录简介示例存在的意义?补充:ptrdiff_t与size_t的区别总结简介 ptrdiff_t是C/C++标准库中定义的一个与机器相关的数据类型。ptrdiff_t类型变量通常用来...
    99+
    2022-11-16
    ptrdiff_t c语言 ptrdiff_t c++ ptrdiff_t
  • C++中标准线程库的基本使用介绍
    目录1.创建线程异步执行2.通过使用互斥锁防止线程冲突3.采用信号量控制线程的运行4.通过promise实现进程间通信总结Qt的封装程度比较高的线程类用多了,发现C++标准库里面的线...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作