【C++程序员必修第一课】C++基础课程-12:std::array 固定数组

1 本课主要内容:

  • std::array 固定数组的声明
  • 基本使用:赋值、访问数组、遍历等

2 主要知识点:

  • std::array 固定数组的声明

#include 

// std::array 固定数组例子
std::array array1;                      // 未初始化数组元素的值
std::array array2{ 1, 2 };              // 初始化为:1 2 0 0 0
std::array array3{ 1, 2, 3, 4, 5 };     // 初始化为:1 2 3 4 5
  • 赋值

// 数组赋值
array1[0] = 10;     // 使用 [INDEX] 赋值
array1.at(1) = 20;  // 使用 at(INDEX) 赋值
  • 访问数组元素

// 访问数组元素
const int v1 = array2[0];       // 使用 [INDEX] 访问
const int v2 = array2.at(1);    // 使用 at(INDEX) 访问
const int v3 = array2.front();  // 访问第一个
const int v4 = array2.back();   // 访问最后一个
  • 遍历数组

// 遍历 array 数组:例子1
for (const auto& v : array3) {
    std::cout << v << std::endl;
}

// 例子2:
for (int i=0; i < array3.size(); ++i) {
    const int v = array3.at(i);
    std::cout << v << std::endl;
}
  • 其他函数

// 数组大小
const int arraySize = array2.size();
// 判断数组是否为空
const bool isEmpty = array2.empty();
  • 完整例子代码

#include 

// std::array 固定数组例子
std::array array1;                      // 未初始化数组元素的值
std::array array2{ 1, 2 };              // 初始化为:1 2 0 0 0
std::array array3{ 1, 2, 3, 4, 5 };     // 初始化为:1 2 3 4 5
// 数组赋值
array1[0] = 10;     // 使用 [INDEX] 赋值
array1.at(1) = 20;  // 使用 at(INDEX) 赋值
// 访问数组元素
const int v1 = array2[0];       // 使用 [INDEX] 访问
const int v2 = array2.at(1);    // 使用 at(INDEX) 访问
const int v3 = array2.front();  // 访问第一个
const int v4 = array2.back();   // 访问最后一个
std::cout << "array[0] = " << v1 << std::endl;
std::cout << "array.at(1) = " << v2 << std::endl;
std::cout << "array.front() = " << v3 << std::endl;
std::cout << "array.back() = " << v4 << std::endl;
// 数组大小
const int arraySize = array2.size();
std::cout << "array.size() = " << arraySize << std::endl;
// 判断数组是否为空
const bool isEmpty = array2.empty();
std::cout << "array.empty() = " << isEmpty << std::endl;
// 遍历 array 数组
for (const auto& v : array3) {
    std::cout << v << std::endl;
}

3 注意事项:

  • 访问固定数组需要注意下标越界,就是 array[index], array.at(index) 访问数组时 index

4 课后练习:

  • 练习1:利用 std::generate_canonical 产生 100 组 [0,1] 范围内随机浮点数,存放到 array 数组1;
  • 练习2:遍历数组1,判断元素值 <0.5,元素值 +1.0,把结果更新到数组元素值,最后再遍历打印出来

附录:在线视频课程

【C++程序员必修第一课】C++基础课程

你可能感兴趣的:(c++,array固定数组,遍历array数组,C++程序员员课程,C++基础课程)