在下面的c ++示例中做什么/ =做什么?

Sil*_*eag -1 c++ boost

例:

boost::filesystem::path filename;
filename /= boost::filesystem::temp_directory_path();
filename /= boost::filesystem::unique_path();
Run Code Online (Sandbox Code Playgroud)

它比它更好吗?

auto filename = boost::filesystem::unique_path("%%%%-%%%%-%%%%-%%%%");

Mic*_*ius 7

boost :: filesystem重载/ =运算符以调用路径对象的append方法,在这种情况下为"filename".

根据文件:

功效:

将path :: preferred_separator追加到pathname,根据需要转换格式和编码([path.arg.convert]),除非:

  • 添加的分隔符将是多余的,或
  • 会改变绝对路径的相对路径,或
  • p.empty(),或
  • *p.native().cbegin()是一个目录分隔符.

然后将p.native()附加到路径名.

返回:*this

这两个片段不相同,因此无法比较相对风格的优点.