Namespaces
Variants
Actions

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

From cppreference.com
< cpp‎ | container‎ | array
 
 
 
 
reference operator[]( size_type pos );
(1)(since C++11)
(constexpr since C++17)
const_reference operator[]( size_type pos )const;
(2)(since C++11)
(constexpr since C++14)

Returns a reference to the element at specified location pos.

If pos < size() is false, the behavior is undefined.

(until C++26)

If pos < size() is false:

  • If the implementation is hardened, a contract violation occurs. Moreover, if the contract-violation handler returns under “observe” evaluation semantic, the behavior is undefined.
  • If the implementation is not hardened, the behavior is undefined.
(since C++26)

Contents

[edit]Parameters

pos - position of the element to return

[edit]Return value

Reference to the requested element.

[edit]Complexity

Constant.

[edit]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(since C++26).

[edit]Example

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

#include <array>#include <iostream>   int main(){std::array<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

[edit]See also

access specified element with bounds checking
(public member function)[edit]
close