std::span<T,Extent>::operator[]
来自 cppreference.com
constexpr reference operator[]( size_type idx ) const; |
(自 C++20) | |
返回对序列中第 idxth 个元素的引用。如果 idx 超出范围(即,如果它大于或等于 size()),则行为未定义。
内容 |
[编辑] 参数
idx | - | 要访问的元素的索引 |
[编辑] 返回值
对序列中第 idxth 个元素的引用,即 data()[idx].
[编辑] 异常
不抛出任何内容。
[编辑] 示例
运行此代码
#include <cstddef> #include <iostream> #include <span> #include <utility> void reverse(std::span<int> span) { for (std::size_t i = 0, j = std::size(span); i < j; ++i) { --j; std::swap(span[i], span[j]); } } void print(std::span<const int> const span) { for (int element : span) std::cout << element << ' '; std::cout << '\n'; } int main() { int data[]{1, 2, 3, 4, 5}; print(data); reverse(data); print(data); }
输出
1 2 3 4 5 5 4 3 2 1
[编辑] 参见
(C++26) |
访问指定元素并进行边界检查 (公有成员函数) |
直接访问底层连续存储 (公有成员函数) | |
返回元素数量 (公有成员函数) | |
(C++20) |
将 span 转换为其底层字节的视图(函数模板) |