名前空間
変種
操作

std::filesystem::path::generic_string, std::filesystem::path::generic_wstring, std::filesystem::path::generic_u8string, std::filesystem::path::generic_u16string, std::filesystem::path::generic_u32string

提供: cppreference.com
< cpp‎ | filesystem‎ | path
 
 
 
 
template< class CharT, class Traits = std::char_traits<CharT>,

          class Alloc = std::allocator<CharT> >
std::basic_string<CharT,Traits,Alloc>

    generic_string( const Alloc& a = Alloc() ) const;
(1) (C++17以上)
(2) (C++17以上)
std::string generic_string() const;
std::wstring generic_wstring() const;
std::u16string generic_u16string() const;
std::u32string generic_u32string() const;
(3)
std::string generic_u8string() const;
(C++17以上)
(C++20未満)
std::u8string generic_u8string() const;
(C++20以上)

特定の文字列型に変換された汎用パス名形式の内部パス名を返します。 変換は、必要であれば、以下のよう規定されます。

  • path::value_typechar の場合、変換はシステム依存です。 一般的な POSIX システム (Linux など) が該当します。 それらのシステムではネイティブエンコーディングは UTF-8 で、 string() は変換を行いません。
  • path::value_typewchar_t の場合、変換は未規定です。 Windows が該当します。 Windows では wchar_t は16ビットで、ネイティブエンコーディングは UTF-16 です。
  • path::value_typechar16_t の場合、ネイティブエンコーディングは UTF-16 で、変換方法は未規定です。
  • path::value_typechar32_t の場合、ネイティブエンコーディングは UTF-32 で、変換方法は未規定です。
  • path::value_typechar8_t の場合、ネイティブエンコーディングは UTF-8 で、変換方法は未規定です。

文字 / はディレクトリ区切り文字として使用されます。

1) すべてのメモリ確保は a によって行われます。
3) u8string() の場合、結果のエンコーディングは必ず UTF-8 です。

目次

[編集] 引数

a - 文字列を構築するためのアロケータ
型の要件
-
CharT はエンコードされた文字型 (char, wchar_t, char16_t, char32_t) のいずれかでなければなりません。

[編集] 戻り値

指定された文字列型に変換された汎用パス名形式の内部パス名。

[編集] 例外

(なし)

[編集] 関連項目

文字列に変換されたネイティブパス名形式のパスを返します
(パブリックメンバ関数) [edit]