C++ 标准库 - <array>

C++ std::array::at 与 vector::at 相同:越界抛 std::out_of_range。operator[] 不检查。

原型

T& at(size_t n);
const T& at(size_t n) const;

参数

  • n:下标,从 0 起。

返回值

该元素的引用。

示例

#include <array>
#include <iostream>
#include <stdexcept>

int main() {
    std::array<int, 3> a{1, 2, 3};
    std::cout << a.at(1) << "\n";
    try {
        std::cout << a.at(9) << "\n";
    } catch (const std::out_of_range&) {
        std::cout << "out_of_range\n";
    }
    return 0;
}

输出:

2
out_of_range

注意事项

热路径且下标已保证合法时可用 []。

下一页介绍fill。