C++实现两个路径拼接
时间: 2023-11-27 19:04:35 浏览: 40
您好!要在C++中实现两个路径的拼接,您可以使用`std::filesystem`库中的`path`类来完成。
下面是一个示例函数,该函数将接受两个路径参数,并返回它们的拼接结果:
```cpp
#include <iostream>
#include <filesystem>
std::string concatenatePaths(const std::string& path1, const std::string& path2) {
std::filesystem::path p1(path1);
std::filesystem::path p2(path2);
p1 /= p2; // 使用"/="操作符将两个路径拼接在一起
return p1.string();
}
int main() {
std::string path1 = "/usr/bin";
std::string path2 = "program.exe";
std::string concatenatedPath = concatenatePaths(path1, path2);
std::cout << "Concatenated Path: " << concatenatedPath << std::endl;
return 0;
}
```
在这个示例中,我们首先将输入的路径字符串转换为`std::filesystem::path`类型的对象。然后,我们使用`/=`操作符将第二个路径拼接到第一个路径上。最后,我们使用`string()`函数将拼接后的路径转换回字符串。
希望这对您有所帮助!如果您有任何其他问题,请随时提问。