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

履歴 編集

function template
<filesystem>

std::filesystem::path::concat(C++17)

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

処理系