为什么我的VS2013 编译器还是199711而不是201103L

卓洛王子 2014-09-22 12:17:02
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
#ifndef __cplusplus
cout<<R"(C++预定义符出错)"<<endl;
#endif

#if __cplusplus < 201103L
cout << R"(不支持C++11)" << "\t"<< __cplusplus << endl;
#else if
cout << R"(支持C++11)" << endl;
#endif
return 0;
}

本地环境:win8.1 +VS2012+VS2013,大家有遇到这种情况吗?如果这样子不按照标准的情况办支持C++11语法,那如果解决混编的问题还是暂时放弃新语法特性或者直接使用混编形式?
...全文
582 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
卓洛王子 2014-09-24
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
语法糖越甜,编译调试查错越苦! 把有限的生命浪费在品尝/品鉴无穷多种的语法糖中,我认为不值当。
没听懂,语法糖什么的总要进步。只是我不了解编译器基础啦。
卓洛王子 2014-09-24
  • 打赏
  • 举报
回复
引用 1 楼 brookmill 的回复:
我的g++也是199711,但是编译的时候加个选项“-std=c++11”就可以编译c++11 VS应该也有类似的设置吧
在编译选项中是有这个设置,我使用VS的都是在编译这块比较低端,都是默认的,小白用户啊
brookmill 2014-09-22
  • 打赏
  • 举报
回复
我又试了一下VS2013express,也是199711,但是什么都不用设置直接就可以编译c++11
brookmill 2014-09-22
  • 打赏
  • 举报
回复
我的g++也是199711,但是编译的时候加个选项“-std=c++11”就可以编译c++11 VS应该也有类似的设置吧
赵4老师 2014-09-22
  • 打赏
  • 举报
回复
语法糖越甜,编译调试查错越苦! 把有限的生命浪费在品尝/品鉴无穷多种的语法糖中,我认为不值当。
  • 打赏
  • 举报
回复
我的Ultimate 2013 是 199711
FancyMouse 2014-09-22
  • 打赏
  • 举报
回复
目测因为vc还没有支持所有c++11特性,所以保守起见还是用老值。要是现在就改了新值估计又有人会发帖说这个已经201103了怎么还不支持char16_t,麻烦事更多。

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧