c++const变量在编译时刻需要具体初值?

[复制链接]
查看11 | 回复6 | 2021-1-27 05:48:41 | 显示全部楼层 |阅读模式


两个矛盾如何解释??求大佬指教谢谢!
分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层
引用1楼InTheSolitude的回复:这是浙大的c++别反驳老师谢谢学会一些说话的艺术,变反驳为请教。理科比较好的地方是许多问题能用事实去评断,无论你的老师多么牛X,在编译器输出跟他想的不一致这个事实面前,他不会太坚持。
回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层


在编译的时候根本没法知道size的值,所以就会报错!
跟编译工具有关,有的编译工具允许定义数组时使用变量,有的则不行!
所以还是建议使用VisualStudio系列的
回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层
引用3楼陈仲甫的回复:Quote: 引用1楼InTheSolitude的回复:
这是浙大的c++别反驳老师谢谢
学会一些说话的艺术,变反驳为请教。理科比较好的地方是许多问题能用事实去评断,无论你的老师多么牛X,在编译器输出跟他想的不一致这个事实面前,他不会太坚持。

谢谢大佬的指点呀


回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层
引用4楼棉猴的回复:

在编译的时候根本没法知道size的值,所以就会报错!
跟编译工具有关,有的编译工具允许定义数组时使用变量,有的则不行!
所以还是建议使用VisualStudio系列的

行吧我就猜这dev不更新的玩意离谱!
回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层
你还是去了解一下C99标准吧。
C++里是不允许那样,但有大多编译器C\C++不分家,为了完全兼容C99,就允许那样。
而主打C++的微软VS,就不在乎了。
回复

使用道具 举报

千问 | 2021-1-27 05:48:41 | 显示全部楼层
1.变长数组是C99的,而不是C++的。
2.VC虽然已经支持很多C99特性,但是变长数组还是不支持的,
所以不能用VC编译。
3.用gcc编译,需要指定--std=c99
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行