xcode配置之libc++ libstdc++

libstdc++ 是 GNU 项目的标准库。Apple 中默认的版本是旧的,不支持新的标准库特性。需要新版gcc可以用homebrew,gcc的版本那是相当新。

libc++ 为 LLVM 项目重新编写,包含 C++ 11 标准库。如,smart pointer,function, tuple,unordered_map,unordered_set等。这些库简化了代码。另外 libc++ 支持 move 语意,速度也有加快。



至于为什么要用clang替换gcc,又搞了个libc++  替换 libstdc++,可以参考Mac OS X 背后的故事(八)三好学生Chris Lattner的LLVM编译工具链。

libstdc++ 新版本也是支持C++ 11标准库的,至于为什么Apple中默认没有使用新版本,那就可能不是技术层面的问题了。

你可能感兴趣的:(iOS)