Namespaces
Variants

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

From cppreference.net

reference operator [ ] ( size_type pos ) ;
(1) (depuis C++11)
(constexpr depuis C++17)
const_reference operator [ ] ( size_type pos ) const ;
(2) (depuis C++11)
(constexpr depuis C++14)

Retourne une référence à l'élément à la position spécifiée pos .

Si pos < size ( ) est false , le comportement est indéfini.

(jusqu'à C++26)

Si pos < size ( ) est false :

  • Si l'implémentation est renforcée , une violation de contrat se produit. De plus, si le gestionnaire de violation de contrat revient sous la sémantique d'évaluation "observer", le comportement est indéfini.
  • Si l'implémentation n'est pas renforcée, le comportement est indéfini.
(depuis C++26)

Table des matières

Paramètres

pos - position de l'élément à retourner

Valeur de retour

Référence à l'élément demandé.

Complexité

Constante.

Notes

Contrairement à std::map::operator[] , cet opérateur n'insère jamais un nouvel élément dans le conteneur. L'accès à un élément inexistant via cet opérateur est un comportement indéfini , sauf si l'implémentation est renforcée (since C++26) .

Exemple

Le code suivant utilise operator [ ] pour lire et écrire dans un 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';
}

Sortie :

Second element: 4
All numbers: 5 4 6 8

Voir aussi

accéder à l'élément spécifié avec vérification des limites
(fonction membre publique)