FreeBSD Manual Pages
std::span::at(3) C++ Standard Libary std::span::at(3) NAME std::span::at - std::span::at Synopsis constexpr reference at( size_type pos ) const; (since C++26) Returns a reference to the element at specified location pos, with bounds checking. If pos is not within the range of the span, an exception of type std::out_of_range is thrown. Parameters pos - position of the element to return Return value Reference to the requested element, i.e. *(data() + pos). Exceptions std::out_of_range if pos >= size(). Complexity Constant. Notes Feature-test macro Value Std Feature __cpp_lib_span 202311L (C++26) std::span::at Example // Run this code #include <iostream> #include <span> #include <stdexcept> #ifdef __GNUG__ [[gnu::noinline]] #endif unsigned int runtime_six() // Emulate runtime input { return 6u; } int main() { int x[]{1, 2, 4, 5, 5, 6}; std::span data(x); // Set element 1 data.at(1) = 88; // Read element 2 std::cout << "Element at index 2 has value " << data.at(2) << '\n'; std::cout << "data size = " << data.size() << '\n'; try { // Set element 6, where the index is determined at runtime data.at(runtime_six()) = 666; } catch (std::out_of_range const& exc) { std::cout << exc.what() << '\n'; } // Print final values std::cout << "data:"; for (int elem : data) std::cout << ' ' << elem; std::cout << '\n'; } Possible output: Element at index 2 has value 4 data size = 6 std::out_of_range: pos >= size() data: 1 88 4 5 5 6 See also operator[] access specified element (public member function) http://cppreference.com 2024.06.10 std::span::at(3)
NAME | Synopsis | Parameters | Return value | Exceptions | Complexity | Notes | Example | Possible output: | See also
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::span::at&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
