我在Xcode中有一个简单的OpenGL项目。
Xcode升级到4.5
后开始以一种奇怪的方式行事在以下行
#include <fstream.h>
编译失败,以下错误meesage:找不到词汇或预处理器问题'fstream.h'文件。
在Xcode 4.2
中成功编译的代码相同的代码将行更改为
#include <c++/4.2.1/backward/fstream.h>
解决了问题,但生成了其他几个汇编错误。
fstream.h不是C 标头。当您使用较长的路径名时,您将访问其他不兼容的标准库实现(命名为libstdc ),该实现的兼容标头为fstream.h.h(用于与标准前C ; C 兼容14年前的标准化)。<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</p>
fstream.h与xcode 4.2一起使用,因为XCode的该版本默认使用了libstdc ,但是Xcode 4.5已移动以默认使用libc 。
解决方案是使用标准C 并包括<fstream>
。
另外,我不建议这样做,您可以切换您在项目设置中使用的标准库实现。