c++

C++中如何定义和使用常量数组

小樊
101
2024-09-11 17:49:10
栏目: 编程语言

在C++中,可以通过以下方式定义和使用常量数组:

  1. 使用const关键字定义常量数组:
#include<iostream>

int main() {
    const int arr[] = {1, 2, 3, 4, 5}; // 定义一个常量数组

    for (int i = 0; i< sizeof(arr) / sizeof(arr[0]); ++i) {
        std::cout << "arr[" << i << "] = "<< arr[i]<< std::endl;
    }

    return 0;
}

注意:常量数组在定义时必须初始化,且数组的大小是固定的。

  1. 使用std::array定义常量数组(C++11及更高版本):
#include<iostream>
#include<array>

int main() {
    const std::array<int, 5> arr = {1, 2, 3, 4, 5}; // 定义一个常量数组

    for (size_t i = 0; i < arr.size(); ++i) {
        std::cout << "arr[" << i << "] = "<< arr[i]<< std::endl;
    }

    return 0;
}

注意:std::array是一个模板类,可以存储固定大小的元素。与常规数组相比,std::array提供了更多的功能和更好的封装。

  1. 使用constexpr关键字定义编译时常量数组(C++11及更高版本):
#include<iostream>

int main() {
    constexpr int arr[] = {1, 2, 3, 4, 5}; // 定义一个编译时常量数组

    for (int i = 0; i< sizeof(arr) / sizeof(arr[0]); ++i) {
        std::cout << "arr[" << i << "] = "<< arr[i]<< std::endl;
    }

    return 0;
}

注意:constexpr关键字表示该数组在编译时就已经确定,因此其值不能在运行时改变。这种方式定义的数组具有更高的性能,因为它们在编译时就已经计算完成。

0
看了该问题的人还看了