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 ) |
The inline
Qt::Literals::StringLiterals
namespace declares string literal operators for Qt types. Because both
Literals
and
StringLiterals
namespaces are declared as inline, the symbols from this namespace can be accessed by adding one of the following to your code:
// 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 noexcept, 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 noexcept, 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 .
[noexcept, 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 .
[noexcept, 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 .