# std::basic_string_view<CharT,Traits>::at

< cpp‎ | string‎ | basic string view

constexpr const_reference at(size_type pos) const; |  | (C++17 起)

返回到在指定位置 `pos` 的字符的引用。进行边界检查，非法访问时将抛出 std::out_of_range 类型异常。

### 参数

pos | - | 要返回的字符的位置

### 返回值

到请求字符的引用。

### 异常

若 pos >= size() 则抛出 std::out_of_range 。

### 复杂度

常数。

### 示例

    #include <iostream>
    #include <stdexcept>
    #include <string_view>

    int main()
    {
        std::string_view str_view("abcdef");

        try {
            for (std::size_t i = 0; true; ++i)
                std::cout << i << ": " << str_view.at(i) << '\n';
        }
        catch (const std::out_of_range& e) {
            std::cout << "Whooops. Index is out of range.\n";
            std::cout << e.what() << '\n';
        }
    }

可能的输出：

    0: a
    1: b
    2: c
    3: d
    4: e
    5: f
    6: Whooops. Index is out of range.
    basic_string_view::at: __pos (which is 6) >= this->size() (which is 6)

### 参阅

operator[] | 访问指定字符 (公开成员函数)