Visual Studio之__cplusplus版本

1. 默认值

Visual Studio(下文简称VS)中__cplusplus宏的默认值一直是: 199711L
可以用下面的代码查看 __cplusplus 的输出结果:

#pragma once
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
	cout << "__cpplus = " << __cplusplus << endl;

	system("pause");
	return 0;
}

2. 修改

目前官网说,仅支持VS2017(version15.7)及以上版本添加编译器命令修改。
修改命令: /Zc:__cplusplus 或者 /Zc:__cplusplus-
命令添加到:
中文版VS:项目属性->c/c++->命令行->其他选项(D)
英文版VS:project's Property -> C/C++ > Command Line->Additional options: pane

3. __cplusplus 值

/Zc:__cplusplus switch /std:c++ switch __cplusplus value
Zc:__cplusplus /std:c++14 (default) 201402L
Zc:__cplusplus /std:c++17 201703L
Zc:__cplusplus /std:c++latest 201704L
Zc:__cplusplus- (disabled) Any value 199711L
Not specified Any value 199711L
posted @ 2020-09-16 15:55  mohist  阅读(1579)  评论(0编辑  收藏  举报