Obsolete Members for QByteArray

以下成員源於類 QByteArray 被棄用。 提供它們是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它們。

公共函數

(deprecated in 6.4) qsizetype count () const

相關非成員

(deprecated in 6.9) int qsnprintf (char * str , size_t n , const char * fmt , ...)
(deprecated in 6.9) int qvsnprintf (char * str , size_t n , const char * fmt , va_list ap )
(since 6.2, deprecated in 6.8) QByteArray operator""_qba (const char * str , size_t size )

成員函數文檔編製

[constexpr noexcept, deprecated in 6.4] qsizetype QByteArray:: count () const

This function is deprecated since 6.4. We strongly advise against using it in new code.

使用 size () 或 length () 代替。

如同 size ().

這是重載函數。

相關非成員

[deprecated in 6.9] int qsnprintf ( char * str , size_t n , const char * fmt , ...)

This function is deprecated since 6.9. We strongly advise against using it in new code.

Use C++11's std::snprintf() from <cstdio> 代替。

可移植 snprintf() 函數,調用 qvsnprintf。

fmtprintf() format string. The result is put into str , which is a buffer of at least n 字節。

警告: Call this function only when you know what you are doing since it shows different behavior on certain platforms. Use QString::asprintf () to format a string instead.

另請參閱 qvsnprintf () 和 QString::asprintf ().

[deprecated in 6.9] int qvsnprintf ( char * str , size_t n , const char * fmt , va_list ap )

This function is deprecated since 6.9. We strongly advise against using it in new code.

Use C++11's std::vsnprintf() from <cstdio> 代替。

可移植 vsnprintf() 函數。會調用 ::vsnprintf() , ::_vsnprintf() ,或 ::vsnprintf_s depending on the system, or fall back to an internal version.

fmtprintf() format string. The result is put into str , which is a buffer of at least n 字節。

The caller is responsible to call va_end() on ap .

警告: Since vsnprintf() shows different behavior on certain platforms, you should not rely on the return value or on the fact that you will always get a 0 terminated string back. There are also differences in how %a (hex floats) and %ls (wide strings) are handled on WebAssembly and Android.

Ideally, you should never call this function but use QString::asprintf () 代替。

另請參閱 qsnprintf () 和 QString::asprintf ().

[noexcept, since 6.2, deprecated in 6.8] QByteArray operator""_qba (const char * str , size_t size )

此函數從 6.8 起棄用。強烈建議在新代碼中不要使用它。

使用 _ba from Qt::StringLiterals namespace instead.

文字運算符創建的 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 :

auto str = "hello"_qba;
					

該函數在 Qt 6.2 引入。

另請參閱 QByteArrayLiteral and QtLiterals::operator""_qs (const char16_t *str, size_t size).