c++17随想

本文探讨了C++17即将引入的一些关键技术特性和工具,包括optional、variant、basic_string_view等,并讨论了这些特性如何提升编程效率及代码质量。此外,文中还对比了C#与C++在技术采纳上的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

c++17应该不多久就应该出来了吧(应该)

虽然之前好像毙掉过好几个TS,不过最终版出来的时候会怎么样,谁知道呢。

趁这段时间,先把几个确定了的ts先熟悉起来,这里也做个列表作为备忘:

optional (C++17)  −  any (C++17)
variant (C++17)

basic_string_view (C++17)

Special mathematical functions (C++17)

Filesystem library (C++17)



其实这些TS。有的在c#里早就有了。

filesystem,module,corutine,concept。

转c#早的人早就享受了好几年了。

我一直有这样一个看法,

那就是c#是c++的技术前沿和试验田。


以下是我的脑补,当年为什么微软要自己做个c#出来,

怕不是因为c++委员会否决了太多微软提出的提案,

原因么(也是脑补)可能因为这些提案太超前,

抑或c++委员会太保守(为了保持向前兼容)

又或者委员会不希望微软一家独大。

总之,微软把在c++标准上被驳回的提案,在自家的编译器上实现了,

这就是c#。


但是微软也并未放弃为这些提案进入c++标准而做的努力,

终于module要来了,这是多么功德无量的一件事。

不但大大节约了程序员的生命,还破除了一些无可奈何的设计模式(如p_impl)。

以前的编译器相当于造房子的脚手架,简单,单一,

现在的编译环境就好像火箭的发射架,本身就是一个庞大复杂的系统。


虽然现在工作上用不上c++,

但是一开始写c++代码,就能获得一种不可思议的心灵上的平静。

我想我是真的很喜欢这门语言吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值