Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何添加std=c++;11号旗到铿锵cl?_Windows_C++11_Clang_Compiler Flags - Fatal编程技术网

Windows 如何添加std=c++;11号旗到铿锵cl?

Windows 如何添加std=c++;11号旗到铿锵cl?,windows,c++11,clang,compiler-flags,Windows,C++11,Clang,Compiler Flags,我试图在Windows下用clang cl编译一个C++11程序。Clang cl是Clang的包装器,它与cl(Visual Studio编译器)更兼容。我试图添加-std=c++11和/std=c++11,但都被拒绝了。这并不奇怪,因为cl没有C++11标志。 但是我不能将C++11特性与clang-cl结合使用 如何在clang cl中启用C++11支持?前面提到的文档中说: 对于Windows目标,clang默认为C++11 也许您不需要向clang-cl传递任何标志。来自: /std:

我试图在Windows下用clang cl编译一个C++11程序。Clang cl是Clang的包装器,它与cl(Visual Studio编译器)更兼容。我试图添加
-std=c++11
/std=c++11
,但都被拒绝了。这并不奇怪,因为cl没有C++11标志。 但是我不能将C++11特性与clang-cl结合使用


如何在clang cl中启用C++11支持?

前面提到的文档中说:

对于Windows目标,clang默认为C++11

也许您不需要向clang-cl传递任何标志。

来自:

/std:

对于任何未来的访问者,对clang cl使用
/std:c++17
对我来说都很有效。请注意,std之后没有等号。

我尝试编译一个使用Linux和Clang 3.5开发和编译的代码库。我用CMake和Visual Studion 2013以及Clang 3.5作为工具链进行了尝试。由于shared_ptr或nullptr,编译器出错。我将再次检查它是否真的是C++11。因为在Windows上配置检查_has_属性(已弃用)也失败。@usr1234567 C++11在默认情况下与clang-cl一起工作。请确保在配置为查找Visual Studio标头等的环境中运行它。也就是说,clang-cl@bames53也需要vcvarsall.bat脚本来设置cmd.exe环境,以便您可以使用cl.exe。我想我需要。它位于我的CMake项目的构建目录中。或者我必须用CMake显式设置吗?@usr1234567如果您从cmd.exe运行clang cl,则需要自己配置环境,或者使用Visual Studio cmd.exe快捷方式之一。如果您是从VisualStudio项目中构建的,那么它应该由VS为您设置。我尝试使用VisualStudio中的cmd进行设置,其中所有内容都已设置。很有效,谢谢。
/std:<standard>