• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function template
    <filesystem>

    std::filesystem::path::concat

    template <class Source>
    path& concat(const Source& x);                         // (1)
    
    template <class InputIterator>
    path& concat(InputIterator first, InputIterator last); // (2)
    

    概要

    パス文字列を加算する。

    効果

    • (1) : path(x).native()を、*thisが保持するパス文字列に加算する
    • (2) : return *this += path(first, last)と等価

    戻り値

    *this

    #include <iostream>
    #include <filesystem>
    
    namespace fs = std::filesystem;
    
    int main()
    {
      {
        fs::path p = "foo";
        p.concat("bar");
        std::cout << p << std::endl;
      }
      {
        fs::path p = "foo/";
        p.concat("bar");
        std::cout << p << std::endl;
      }
      {
        std::string bar = "bar";
    
        fs::path p = "foo";
        p.concat(bar.begin(), bar.end());
    
        std::cout << p << std::endl;
      }
    }
    

    出力

    "foobar"
    "foo/bar"
    "foobar"
    

    バージョン

    言語

    • C++17

    処理系