The StringLiterals namespace declares string literal operators for Qt types. 更多...
头: | #include <QStringLiterals> |
CMake: |
find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
QLatin1Char | operator""_L1 (char ch ) |
QLatin1StringView | operator""_L1 (const char * str , size_t size ) |
QByteArray | operator""_ba (const char * str , size_t size ) |
QString | operator""_s (const char16_t * str , size_t size ) |
内联
Qt::Literals::StringLiterals
名称空间声明用于 Qt 类型的字符串文字操作符。因为两者
Literals
and
StringLiterals
名称空间是以内联方式声明的,所以,来自此名称空间的符号可以通过在代码中添加下列之一访问:
// Makes visible only the literal operators declared in StringLiterals 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;
[constexpr, since 6.4]
QLatin1Char
operator""_L1
(
char
ch
)
文字运算符创建的 QLatin1Char out of ch .
以下代码创建 QLatin1Char :
using namespace Qt::Literals::StringLiterals; auto ch = 'a'_L1;
该函数在 Qt 6.4 引入。
另请参阅 Qt::Literals::StringLiterals .
[constexpr, since 6.4]
QLatin1StringView
operator""_L1
(const
char
*
str
,
size_t
size
)
文字运算符创建的 QLatin1StringView out of the first size characters in the char string literal str .
以下代码创建 QLatin1StringView :
using namespace Qt::Literals::StringLiterals; auto str = "hello"_L1;
该函数在 Qt 6.4 引入。
另请参阅 Qt::Literals::StringLiterals .
[since 6.4]
QByteArray
operator""_ba
(const
char
*
str
,
size_t
size
)
文字运算符创建的 QByteArray out of the first size characters in the char string literal str .
The QByteArray is created at compile time, and the generated string data is stored in the read-only segment of the compiled object file. Duplicate literals may share the same read-only memory. This functionality is interchangeable with QByteArrayLiteral , but saves typing when many string literals are present in the code.
以下代码创建 QByteArray :
using namespace Qt::Literals::StringLiterals; auto str = "hello"_ba;
该函数在 Qt 6.4 引入。
另请参阅 Qt::Literals::StringLiterals .
[since 6.4]
QString
operator""_s
(const
char16_t
*
str
,
size_t
size
)
文字运算符创建的 QString out of the first size characters in the char16_t string literal str .
The QString is created at compile time, and the generated string data is stored in the read-only segment of the compiled object file. Duplicate literals may share the same read-only memory. This functionality is interchangeable with QStringLiteral , but saves typing when many string literals are present in the code.
以下代码创建 QString :
using namespace Qt::Literals::StringLiterals; auto str = u"hello"_s;
该函数在 Qt 6.4 引入。
另请参阅 Qt::Literals::StringLiterals .