std::basic_string<CharT,Traits,Allocator>:: data
|
const
CharT
*
data
(
)
const
;
|
(1) |
(noexcept desde C++11)
(constexpr desde C++20) |
|
CharT
*
data
(
)
noexcept
;
|
(2) |
(desde C++17)
(constexpr desde C++20) |
Devuelve un puntero al array subyacente que sirve como almacenamiento de caracteres. El puntero es tal que el rango
|
|
(hasta C++11) |
|
|
(desde C++11) |
es válido y los valores en él corresponden a los valores almacenados en la cadena.
|
El array devuelto no necesita estar terminado en nulo. Si empty() devuelve true , el puntero es un puntero no nulo que no debe ser desreferenciado. |
(until C++11) |
|
El array devuelto está terminado en nulo, es decir,
Si empty() devuelve true , el puntero apunta a un único carácter nulo. |
(since C++11) |
El puntero obtenido de
data()
puede ser invalidado por:
- Pasar una referencia no constante a la cadena a cualquier función de la biblioteca estándar, o
-
Llamar a funciones miembro no constantes en la cadena, excluyendo
operator[](), at() , front() , back() , begin() , end() , rbegin() , rend() .
data
tiene comportamiento indefinido.
data() +
size()
a cualquier valor distinto de
CharT()
tiene comportamiento indefinido.
Contenidos |
Parámetros
(ninguno)
Valor de retorno
Un puntero al almacenamiento de caracteres subyacente.
|
data
(
)
[
i
]
==
operator
[
]
(
i
)
para todo
|
(hasta C++11) |
|
data
(
)
+
i
==
std::
addressof
(
operator
[
]
(
i
)
)
para todo
|
(desde C++11) |
Complejidad
Constante.
Ejemplo
#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())); }
Véase también
|
(
DR*
)
|
accede al primer carácter
(función miembro pública) |
|
(
DR*
)
|
accede al último carácter
(función miembro pública) |
|
devuelve una versión no modificable en formato de arreglo de caracteres C estándar de la cadena
(función miembro pública) |
|
|
devuelve un puntero al primer carácter de una vista
(función miembro pública de
std::basic_string_view<CharT,Traits>
)
|