std::basic_string::size, std::basic_string::length
De cppreference.com
<tbody>
</tbody>
<tbody class="t-dcl-rev ">
</tbody><tbody>
</tbody>
<tbody class="t-dcl-rev ">
</tbody><tbody>
</tbody>
size_type size() const; |
(hasta C++11) | |
size_type size() const noexcept; |
(desde C++11) (hasta C++20) |
|
constexpr size_type size() const noexcept; |
(desde C++20) | |
size_type length() const; |
(hasta C++11) | |
size_type length() const noexcept; |
(desde C++11) (hasta C++20) |
|
constexpr size_type length() const noexcept; |
(desde C++20) | |
Devuelve el número de elementos CharT en la cadena, p. ej., std::distance(begin(), end()).
Parámetros
(Ninguno)
Valor de retorno
El número de elementos CharT en la cadena.
Complejidad
|
Sin especificar |
(hasta C++11) |
|
Constante |
(desde C++11) |
Notas
Para std::string, los elementos son bytes (objetos de tipo char), que no son los mismos que caracteres si se usa una codificación multibyte, tal como UTF-8.
Example
Ejecuta este código
#include <cassert>
#include <iterator>
#include <string>
int main()
{
std::string s("Ejemplar");
assert(8 == s.size());
assert(s.size() == s.length());
assert(s.size() == static_cast<std::string::size_type>(
std::distance(s.begin(), s.end())));
std::u32string a(U"ハロー・ワールド"); // 8 unidades de código
assert(8 == a.size()); // 8 unidades de código en UTF-32
std::u16string b(u"ハロー・ワールド"); // 8 unidades de código
assert(8 == b.size()); // 8 unidades de código en UTF-16
std::string c(u8"ハロー・ワールド"); // 8 unidades de código
assert(24 == c.size()); // 24 unidades de código en UTF-8
}
Véase también
| Comprueba si la cadena está vacía (función miembro pública) | |
| Devuelve el número máximo de caracteres (función miembro pública) |