我有一个在Xcode 4.6.3上构建和运行良好的项目。但在Xcode 5.1.1上却没有。
这是我唯一的错误,上百次。
"ISO C++11不允许访问声明;使用声明代替使用声明“。
基本上是想让我从:
类胡枝子:指数指数;
至
::索引索引;使用某事::n;
为什么会这样呢?
如果我像Xcode所说的那样“解决它”,最后的应用程序就会随机运行。
是否有可能在Xcode 5.1.1上构建这个项目,就好像它是4.6.3?(换句话说:更改项目设置,但保持代码完整)
对于两个Xcode版本,C++标志具有相同的值。
C语言方言= GNU99 -std=gnu99
C++语言方言= GNU++11 -std=gnu++11
C++标准库= libc++ (具有C++11支持的LLVM C++标准库)
发布于 2014-07-08 21:50:05
它看起来像是对编译器的故意更改:
http://llvm.org/viewvc/llvm-project?view=revision&revision=183882
标准组织说:“访问声明在1998年的标准中被废弃,没有使用-声明的好处。它们应该在C++0x中删除。”
无论如何,我都找不到恢复到旧的(不符合标准的) C++11行为。我只是半信半疑地期待这件事能成功:
clang -std=c++0x
但是,事实并非如此。你也会犯同样的错误。
包括使用看起来像正确的修复。我刚做了一些测试,它做了它在锡罐上说的。
可能不是您想要听到的,但是我认为您应该研究为什么在使用using指令时代码会随机地运行。
https://stackoverflow.com/questions/24641552
复制相似问题