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;
}
}
27
p.concat(bar.begin(), bar.end());
#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;
}
{
出力
"foobar"
"foo/bar"
"foobar"
バージョン
言語
- C++17
処理系
- Clang:
- GCC: 8.1 ✅
- Visual C++: 2017 Update 7 ✅