OS X 10.7 libc++ 是否支持 c++14?

Does OS X 10.7 libc++ support c++14?

我正在更新一个项目以使用最新的 Qt,并借此机会同时切换到 libc++ 和 C++11。我的理解是 OS X 10.7 及更高版本支持这一点,而无需我发布自己构建的标准库。我很高兴不再支持 OS X 版本 <10.7.

C++11 支持很棒,但我真的很想使用 C++14。

为 OS X >10.7 的最终用户安装的 libc++ 是否也支持 C++14 标准库功能?

我的猜测是 'Yes' 并且它在 >10.7 中通过 OS 更新保持最新 - 但我一直无法找到明确的消息来源说明情况如此。

可能不会。 Apple 于 2012 年 10 月发布了 Mac OS X 10.7 (10.7.5) 的最新更新;从那时起 libc++.dylib 不太可能更新(我能想到的唯一例外是安全问题)

Xcode 随附一组 headers 随您的目标 SDK 而变化;如果你针对一个特定的系统(比如 10.7),你会得到那些 headers.

比较/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include//Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/的内容也明白我的意思了。

对于 template-only 功能,您可以使用您自己的一组 headers 来自以后的 LLVM 版本 - 但是您将自己承担确保兼容性的负担。