std::basic_string<CharT,Traits,Allocator>:: data
|
const
CharT
*
data
(
)
const
;
|
(1) |
(noexcept depuis C++11)
(constexpr depuis C++20) |
|
CharT
*
data
(
)
noexcept
;
|
(2) |
(depuis C++17)
(constexpr depuis C++20) |
Retourne un pointeur vers le tableau sous-jacent servant de stockage de caractères. Le pointeur est tel que la plage
|
|
(jusqu'à C++11) |
|
|
(depuis C++11) |
est valide et les valeurs qu'il contient correspondent aux valeurs stockées dans la chaîne.
|
Le tableau retourné n'est pas requis d'être terminé par un caractère nul. Si empty() retourne true , le pointeur est un pointeur non nul qui ne devrait pas être déréférencé. |
(jusqu'à C++11) |
|
Le tableau retourné est terminé par un caractère nul, c'est-à-dire que
Si empty() retourne true , le pointeur pointe vers un unique caractère nul. |
(depuis C++11) |
Le pointeur obtenu à partir de
data()
peut être invalidé par :
- Passer une référence non constante de la chaîne à toute fonction de la bibliothèque standard, ou
-
Appeler des fonctions membres non constantes sur la chaîne, à l'exception de
operator[](), at() , front() , back() , begin() , end() , rbegin() , rend() .
data
a un comportement indéfini.
data() +
size()
à une valeur autre que
CharT()
a un comportement indéfini.
Table des matières |
Paramètres
(aucun)
Valeur de retour
Un pointeur vers le stockage de caractères sous-jacent.
|
data
(
)
[
i
]
==
operator
[
]
(
i
)
pour chaque
|
(jusqu'à C++11) |
|
data
(
)
+
i
==
std::
addressof
(
operator
[
]
(
i
)
)
pour chaque
|
(depuis C++11) |
Complexité
Constante.
Exemple
#include <algorithm> #include <cassert> #include <cstring> #include <string> int main() { std::string const s("Emplary"); assert(s.size() == std::strlen(s.data())); assert(std::equal(s.begin(), s.end(), s.data())); assert(std::equal(s.data(), s.data() + s.size(), s.begin())); assert('\0' == *(s.data() + s.size())); }
Voir aussi
|
(
DR*
)
|
accède au premier caractère
(fonction membre publique) |
|
(
DR*
)
|
accède au dernier caractère
(fonction membre publique) |
|
retourne une version non modifiable du tableau de caractères C standard de la chaîne
(fonction membre publique) |
|
|
retourne un pointeur vers le premier caractère d'une vue
(fonction membre publique de
std::basic_string_view<CharT,Traits>
)
|