GCC 4.6.1报告了一个非常简单的代码的奇怪编译错误:
1113:2:错误:对DIR的引用含糊不清
/usr/include/dirent.h:128:28:错误:候选人是:typedef struct __dirstream DIR
以下是代码:
#include <sys/types.h>
#include <libgen.h>
#include <dirent.h>
// ...
DIR* dir; // <- line 1113
dir = opendir(usedFolderName.c_str());
if ( dir == NULL )
{
// handle error
}
它被编译为C ++,因此不是因为'struct DIR'