错误:' i '没有命名类型
error: ‘i’ does not name a type
我正在使用boost文件系统,我有以下代码来获取根目录中的文件列表。
#include <string>
#include <iostream>
#include <boost/filesystem.hpp>
using namespace std;
using namespace boost::filesystem;
int main()
{
path p("/");
for (auto i = directory_iterator(p); i != directory_iterator(); i++)
{
if (!is_directory(i->path()))
{
cout << i->path().filename().string() << endl;
}
else
continue;
}
}
但是在gcc [ubuntu]
error: ‘i’ does not name a type
for (auto i = directory_iterator(p); i != directory_iterator(); i++)
GCC不自动启用c++ 11模式,使用auto
进行类型演绎需要使用c++ 11模式(或更高版本)
您可以使用-std=c++11
选项启用此功能:
关键字auto
的使用仅在c++11中有效。您使用的编译器是否符合此要求?在c++11之前,auto
是一个存储持续时间指定符。你的错误看起来像编译器在用旧的方式解释它。
相关文章:
- 类没有命名C++代码中的类型错误
- 不完整类型错误(E0409、E0070、E0515)
- 使用具有结构不完整类型错误的模板
- 不命名构造函数和析构函数上的类型错误
- 返回派生类型时出现协变类型错误
- 为什么此构造函数没有给出不完整的类型错误?
- 定义模板化结构的特征时出现不完整的类型错误
- 使用重载构造函数时出现不完整的类型错误
- 为什么我得到表达式必须有类类型错误?
- 输出 [left]=input[i] 行中的 c++ 代码中存在无效的类型错误
- 枚举成员不是类型错误
- 如何修复"ctypes"。参数错误:参数 2:<键入"异常.类型错误">:RaspberryPi 中的错误类型"错误
- 外部 "C" Visual Studio 2015 中的显式类型错误,DLL 测试代码
- 非默认析构函数会导致不完整的类型错误
- 为什么按引用传入会导致绑定引用类型错误
- Objective-C C++ 包装器 类型错误的不完整定义
- 输入类型错误
- 当构造函数的参数类型错误时引发异常
- 命名空间中的'bad_cast' 'std' 未命名类型错误
- C UNWORKOWN类型错误