Qt::Literals::StringLiterals Namespace
namespace Qt::Literals::StringLiteralsEl espacio de nombres StringLiterals declara operadores literales para tipos de cadena Qt. Más...
| Cabecera: | #include <QString> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
Funciones
(since 6.4) QLatin1Char | operator""_L1(char ch) |
(since 6.4) QLatin1StringView | operator""_L1(const char *str, size_t size) |
(since 6.4) QByteArray | operator""_ba(const char *str, size_t size) |
(since 6.4) QString | operator""_s(const char16_t *str, size_t size) |
Descripción detallada
El espacio de nombres inline Qt::Literals::StringLiterals declara operadores literales para tipos de cadena Qt. Dado que ambos espacios de nombres Literals y StringLiterals están declarados como inline, se puede acceder a los símbolos de este espacio de nombres añadiendo uno de los siguientes a su código:
// Makes visible only the literal operators declared in StringLiterals using namespace Qt::StringLiterals; // same, but needlessly verbose: using namespace Qt::Literals::StringLiterals; // Makes visible literal operators declared in all inline namespaces // inside Literals using namespace Qt::Literals; // Makes visible all symbols (including all literal operators) declared // in the Qt namespace using namespace Qt;
Esto último se desaconseja, ya que no permite elegir qué operadores literales se desean en caso de que Qt añada operadores conflictivos en diferentes espacios de nombres dentro de Qt::Literals.
Documentación de funciones
[constexpr noexcept, since 6.4] QLatin1Char operator""_L1(char ch)
Operador literal que crea un QLatin1Char a partir de ch.
El siguiente código crea un QLatin1Char:
using namespace Qt::StringLiterals; auto ch = 'a'_L1;
Esta función se introdujo en Qt 6.4.
Véase también Qt::Literals::StringLiterals.
[constexpr noexcept, since 6.4] QLatin1StringView operator""_L1(const char *str, size_t size)
Operador literal que crea un QLatin1StringView a partir de los primeros size caracteres de la cadena de caracteres literal str.
El siguiente código crea un QLatin1StringView:
using namespace Qt::StringLiterals; auto str = "hello"_L1;
Esta función se introdujo en Qt 6.4.
Véase también Qt::Literals::StringLiterals.
[noexcept, since 6.4] QByteArray operator""_ba(const char *str, size_t size)
Operador literal que crea un QByteArray a partir de los primeros size caracteres de la cadena de caracteres literal str.
El QByteArray se crea en tiempo de compilación, y los datos de cadena generados se almacenan en el segmento de sólo lectura del archivo objeto compilado. Los literales duplicados pueden compartir la misma memoria de sólo lectura. Esta funcionalidad es intercambiable con QByteArrayLiteral, pero ahorra tecleado cuando hay muchos literales de cadena presentes en el código.
El siguiente código crea un QByteArray:
using namespace Qt::StringLiterals; auto str = "hello"_ba;
Esta función se introdujo en Qt 6.4.
Véase también Qt::Literals::StringLiterals.
[noexcept, since 6.4] QString operator""_s(const char16_t *str, size_t size)
Operador literal que crea un QString a partir de los primeros caracteres size del literal de cadena char16_t str.
El QString se crea en tiempo de compilación, y los datos de cadena generados se almacenan en el segmento de sólo lectura del archivo objeto compilado. Los literales duplicados pueden compartir la misma memoria de sólo lectura. Esta funcionalidad es intercambiable con QStringLiteral, pero ahorra tecleado cuando hay muchos literales de cadena presentes en el código.
El siguiente código crea un QString:
using namespace Qt::StringLiterals; auto str = u"hello"_s;
Esta función se introdujo en Qt 6.4.
Véase también Qt::Literals::StringLiterals.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.