codeblocks:error: in C++98 ‘xxx’ must be initialized by constructor, not by ‘{...}’

1.问题:在codeblocks 运行vetor时报错:error: in C++98 ‘xxx’ must be initialized by constructor, not by ‘{…}’
在这里插入图片描述
2.解决:是因为编译的时候是编译默认用的是c++98标准。但是运行需要C++11。
按以下步骤调整:
在这里插入图片描述
在这里插入图片描述
选中之后点ok,就可以运行成功了。

拓展:
C++ 98 标准
C++标准第一版,1998年发布。正式名称为ISO/IEC 14882:1998[18] 。
绝大多数编译器都支持C++98标准。不过当时错误地引入了export关键字。由于技术上的实现难度,除了Comeau C++编译器export关键字以外,没有任何编译器支持export关键字。并且这个标准对现代的一些编译理念有相当的差距,有很多在高级语言都应当有的功能,它都没有。这也正是后来需要制定C++11标准的原因所在。
C++ 11 标准
C++标准第三版,2011年8月12日发布。由C++标准委员会于2011年8月12日公布,并于2011年9月出版。2012年2月28日的国际标准草案(N3376)是最接近于现行标准的草案(编辑上的修正)。C++11包含了核心语言的新机能,并且拓展C++标准程序库,并且加入了大部分的C++ Technical Report 1程序库(数学上的特殊函数除外)。此次标准为C++98发布后13年来第一次重大修正。
注意: C++11标准(ISO/IEC 14882:2011)与C11标准(ISO/IEC 9899:2011)是两个完全不同的标准,后者是C语言的标准。

关于二维向量的定义:

vector<vector<int> > A;//正确的定义方式
vector<vector<int>> A;//c++11之前这样定义是错误的,c++11之后支持这种定义方式
  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值