在C++; 只是想知道在C++代码中使用MKDIR是否有任何缺陷?我听说过system和popen的“弊病”,特别是在谈到安全问题和内存使用时。。。在代码中使用mkdir/getcwd/其他类似的直接unix命令时是否存在类似的问题?谢谢

在C++; 只是想知道在C++代码中使用MKDIR是否有任何缺陷?我听说过system和popen的“弊病”,特别是在谈到安全问题和内存使用时。。。在代码中使用mkdir/getcwd/其他类似的直接unix命令时是否存在类似的问题?谢谢,c++,unix,C++,Unix,在使用mkdir、getcwd等工具时,您可能遇到的唯一问题是将程序移植到不同的平台 除此之外,使用它们是完全安全的 另外-popen和system不是邪恶的,但如果不小心使用,可能会有危险-这适用于大多数系统API。它不可移植到其他操作系统。如果您担心可移植性,请尝试使用Boost: boost::filesystem::path dir("/path/to/newdir"); boost::filesystem::create_directory(dir); 您可能最好使用跨平台库来完成这

在使用
mkdir
getcwd
等工具时,您可能遇到的唯一问题是将程序移植到不同的平台

除此之外,使用它们是完全安全的


另外-
popen
system
不是邪恶的,但如果不小心使用,可能会有危险-这适用于大多数系统API。

它不可移植到其他操作系统。如果您担心可移植性,请尝试使用Boost:

boost::filesystem::path dir("/path/to/newdir");
boost::filesystem::create_directory(dir);

您可能最好使用跨平台库来完成这样的繁琐工作。Boost就是一个例子。除了可移植性,我真的不知道有什么缺点,但如果你需要其他解决方案,你可以看看Boost或qt。这与
mkdir
though@stijn是的。我错过了create_directory语句:)谢谢您的输入-对这些函数的内存使用有什么想法吗?如果我们不是在讨论特定的平台,很难说一些关于内存使用的有用信息。具体来说Linux如何?