Spec-Zone.ru › C++

std::inplace_vector<T,N>::operator[]

constexpr reference operator[]( size_type pos );
(1) (since C++26)
constexpr const_reference operator[]( size_type pos ) const;
(2) (since C++26)

Returns a reference to the element at specified location pos. No bounds checking is performed, unless the implementation is hardened.

If pos < size() is false:

  • If the implementation is hardened, a contract violation occurs.
  • If the implementation is not hardened, the behavior is undefined.

Parameters

pos - position of the element to return

Return value

Reference to the requested element.

Complexity

Constant.

Notes

Unlike std::map::operator[], this operator never inserts a new element into the container. Accessing a nonexistent element through this operator is undefined behavior, unless the implementation is hardened.

Example

The following code uses operator[] to read from and write to a std::inplace_vector<int,N>:

#include <inplace_vector>
#include <iostream>

int main()
{
    std::inplace_vector<int, 4> numbers{2, 4, 6, 8};
    
    std::cout << "Second element: " << numbers[1] << '\n';
    
    numbers[0] = 5;
    
    std::cout << "All numbers:";
    for (auto i : numbers)
        std::cout << ' ' << i;
    std::cout << '\n';
}

Output:

Second element: 4
All numbers: 5 4 6 8

See also

at
access specified element with bounds checking
(public member function)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/inplace_vector/operator_at

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API