【发布时间】:2016-08-04 20:54:30
【问题描述】:
我正在从文件中读取目录,例如我加载了这个"Main\Characters\Player.xxx",所以我想创建文件夹 Main 和 Characters。我尝试使用这种方法(从字符串中删除 Player.xxx 之后)“:
string syntax = "md "+path;
system(syntax.c_str());
但是,'\' 被视为转义而不是反斜杠,最佳解决方案是将每个 '\' 替换为 '\' 但这会将我的工具从 O(n) 增加到 O(2n)它需要 30 秒才能完全完成每个部分。有没有办法在 Code::Blocks 中使用原始字符串?因为R"(\w\\\w)"; 没有为我完成这项工作。 (R 未在此范围内声明).
也欢迎任何其他不围绕原始字符串的解决方案。
【问题讨论】:
-
明确一点,O(n) 和 O(2n) 是一样的。
-
而 O(1) 可能需要十亿年或更长时间。
-
@GManNickG 我知道它们是一样的,但请从逻辑上考虑。
-
我知道你的意思,但只是说“那我得迭代两次”,这样更简单明了。 :) 无论如何,Code::Blocks 是一种 IDE,而不是一种语言。 C++11 支持原始字符串,如果您在使用它们时遇到错误,那么您只需在编译器中启用 C++11 支持。
-
@GManNickG 我想我会照你说的做。