加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 教程 > 正文

C++11学习 - Array的用法

发布时间:2021-01-25 14:11:04 所属栏目:教程 来源:互联网
导读:Array -对于Array来说它是固定大小的序列容器,它们包含严格的线性序列排序的特定数量的元素,在其内部来说,数组除数组除保留其包含的元素外不保留其他任何数据(甚至不包括其大小(这是模板参数,固定在编译时))。就存储大小而言,它与使用该语言的括号

Array

-对于Array来说它是固定大小的序列容器,它们包含严格的线性序列排序的特定数量的元素,在其内部来说,数组除数组除保留其包含的元素外不保留其他任何数据(甚至不包括其大小(这是模板参数,固定在编译时))。就存储大小而言,它与使用该语言的括号语法([])声明的普通数组一样有效。此类仅向其添加一层成员和全局函数,因此可以将数组用作标准容器。要知道的是,零大小的数组是有效的,但不应该取消引用

1.Array的模板形式为 template < class T, size_t N > class array;

2.Array的功能函数

array::begin-返回的是迭代器的开始

array::end-返回的是迭代器的末尾

array::rbegin-返回反向迭代器以反向开始

array::rend-返回反向迭代器以方向末尾

array::cbegin-指针指向的const类型,不能进行修改

array::cend-同理

array::data()-有两种形式一种是const,一种是非const,返回的是数组的内容


  1. // array::data  
  2. #include <iostream>  
  3. #include <cstring>  
  4. #include <array> 
  5. int main ()  
  6.  
  7.   const char* cstr = "www.linuxmi.com" 
  8.   std::array<char,15> charray;  
  9.   std::memcpy (charray.data(),cstr,15);  
  10.   std::cout << charray.data() << 'n'; 
  11.   return 0;  

在这里通过:memcpy函数将其定义的cstr复制到定义的数组内

运行结果:www.linuxmi.com

array::max_size-返回的是数组的最大长度


  1. // array::max_size  
  2. #include <iostream>  
  3. #include <array>  
  4. int main ()  
  5.  
  6.   std::array<int,10> myints;  
  7.   std::cout << "size of myints: " << myints.size() << 'n';  
  8.   std::cout << "max_size of myints: " << myints.max_size() << 'n';  
  9.   return 0;  

运行结果为:

size of myints: 10

max_size of myints: 10

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读