3 #ifndef INCLUDE_NN_NLIB_UNICODE_CONVERT_H_
4 #define INCLUDE_NN_NLIB_UNICODE_CONVERT_H_
23 if (m_Alloc)
delete[] m_Buf;
25 operator const char*()
NLIB_NOEXCEPT {
return m_Buf ? m_Buf :
""; }
43 if (m_Alloc)
delete[] m_Buf;
45 operator const wchar_t*()
NLIB_NOEXCEPT {
return m_Buf ? m_Buf : L
""; }
58 #endif // INCLUDE_NN_NLIB_UNICODE_CONVERT_H_
#define NLIB_NOEXCEPT
環境に合わせてnoexcept 又は同等の定義がされます。
bool IsOk() const noexcept
オブジェクトが有効かどうかを調べます。
#define NLIB_FINAL
利用可能であればfinalが定義されます。そうでない場合は空文字列です。
#define NLIB_DISALLOW_COPY_AND_ASSIGN(TypeName)
TypeName で指定されたクラスのコピーコンストラクタと代入演算子を禁止します。
UTF-8/UTF-16/UTF-32の文字列をUTF-8として渡すためのクラスです。
ToUtf8Obj(const char *str) noexcept
UTF-8文字列を設定します。
UTF-8/UTF-16/UTF-32の文字列をワイド文字列(UTF-16/UTF-32)として渡すためのクラスです。 ...
const char * c_str() noexcept
明示的にC文字列を返します。
ToWideObj(const wchar_t *wstr) noexcept
ワイド文字列を設定します。
const wchar_t * c_str() noexcept
明示的にC文字列を返します。
bool IsOk() const noexcept
オブジェクトが有効かどうかを調べます。