为什么这样呢
#include <vector>
void f()
{
struct S
{
int first, second, third;
};
std::vector<S> vs;
}
Run Code Online (Sandbox Code Playgroud)
使用Visual C++ 2015,但不是使用g ++ 4.8.4?
确保您至少编译-std=c++0x.
在C++ 11中,修改了标准以允许本地类成为模板参数(用于lambda支持).如果你的目标是预C++ 11,这将无法正常工作.
如果您正在编译MSVC,它将默认启用C++ 11,而clang和pre-gcc 6则不然.
另请参见:ISO C++ 03对函数范围定义的结构有什么限制?
没有C++ 11的演示(GCC 4.8.4)(不起作用)
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |