面向对象的glob / globfree替代方案

时间:2013-09-26 15:11:30

标签: c++ oop glob

我目前正在使用glob来匹配包含通配符的输入字符串的UNIX路径名。我的脏代码看起来像这样:

glob_t gl;
int result = glob(inputString, GLOB_TILDE, NULL, &gl);
try {
    // do whatever
} catch(...) {
    globfree(&gl);
    throw;
}
globfree(&gl);

我想知道是否有更聪明的方法在C ++中完成这项工作。我一直在寻找一个类,它会在析构函数中封装对globfree的调用或类似的东西,但没有找到任何开箱即用的东西。

1 个答案:

答案 0 :(得分:2)

更聪明,完全是C ++ - 做你想做的事的方式是使用http://www.boost.org/doc/libs/1_54_0/libs/filesystem/doc/index.htm 特别是directory_iterator可以帮助您完成您想要的任务。 请参阅优秀的tutorials了解如何使用它!