0

在 C++ Builder (Berlin) 中,编辑器的语法高亮显示nullptr为保留字。但是在编译时出现错误:

Undefined symbol 'nullptr'

nullptr已添加到 C++11 标准中,据我所知,C++ Builder Berlin 支持 C++11。我一直在浏览 C++ 编译器选项,但找不到与选择要使用的 C++ 标准相关的任何内容。

C++ Builder Berlin不nullptr支持并且荧光笔只是错误?或者我可以在某处打开 C++11 支持吗?

4

1 回答 1

3

据我所知,C++ Builder Berlin 支持 C++11。

更准确地说,只有其基于 Clang 的编译器支持 C++11。“经典”Windows 32 位编译器没有。

在为 Windows 32 位编译时,您可以在 Project Options 中指定是使用 Classic 编译器还是 Clang 编译器。根据 Embarcadero 的文档:

如何为 Windows 32 位项目使用基于 Clang 的编译器

BCC32C 和 BCC32X 不会取代 BCC32,RAD Studio 为您提供了为每个项目选择编译器的选项。 BCC32 是 32 位 Windows 的默认 C++ 编译器

要为特定项目启用 BCC32C 或 BCC32X, 请  选择Project > Options > C++ Compiler 并禁用 Use 'classic' Borland compilerClassic Compiler.

IDE 现在将使用 Clang 增强的 Win32 编译器。

于 2018-04-16T04:22:15.407 回答