社区问答第19期:深入应用C++11 祁 宇

柔软的胖纸 2015-06-24 10:13:06
加精
在StackOverflow的最近一次世界性调查中,C++11在所有的编程语言中排名第二, C++11受到程序员的追捧是毫不意外的,因为它就像C++之父Bjarne Stroustrup说的:它看起来就像一门新的语言。C++11新增加了相当多的现代编程语言的特性,相比C++98/03,它在生产力、安全性、性能和易用性上都有了大幅提高。比如auto和decltype让我们从书写冗长的类型和繁琐的类型推断中解脱出来,智能指针让我们再也不用担心内存泄漏的问题,右值引用避免了无谓的临时对象拷贝,type_traits和可以变模板参数让我们可以更方便地写更加泛化的代码……这些还只是新增的一百多项新特性中的一小部分而已。C++14的标准在2014年的时候已经确定,而C++17标准正在制定当中,可以预见的未来,C++的发展会越来越好,C++的应用会越来越广泛,也会更受广大开发者地欢迎。

本期的社区问答(6月24日——7月1日)我们请来了《深入应用C++11:代码优化与工程级应用》一书的作者、资深C++技术专家祁宇(id: qicosmos),为大家解答关于C++11中最常用新特性以及分享学习和应用C++11的经验和乐趣。

嘉宾简介:

祁 宇(id: qicosmos) 资深C++技术专家,致力于C++11的应用、研究和推广。金山软件WPS资深工程师,负责Android服务端开发。精通OOP、OOD、设计模式和重构,主要研究方向为架构设计和业务重构,有丰富的开发和研发管理经验。爱好C++,爱好开源,乐于研究和分享技术,开源了多个项目(github地址:https://github.com/qicosmos),在《程序员》杂志发表多篇技术文章。2013年被评为珠海市优秀青年人才。

问答结束后,祁 宇老师会从所有参与活动并提出问题的朋友中选出三位,送上新作《深入应用C++11:代码优化与工程级应用》一书。



购买链接:http://sale.jd.com/act/TXAJNZmSrkWOEL.html

为了营造更好的问答氛围,我们不欢迎一切与主题无关的讨论、灌水和无脑喷子。

下面欢迎大家踊跃提问,在本帖回复即可。

--------------------------------------------------------------------------------------------------------

本期问答获奖用户:

henuyx
rrrfff
wxs_ftp

请获奖用户将本人 邮寄地址+姓名+联系电话 发私信至楼主,我们会尽快为您邮寄礼品。
...全文
9135 93 打赏 收藏 转发到动态 举报
写回复
用AI写文章
93 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_31308385 2016-10-09
  • 打赏
  • 举报
回复
boost库的视频教程,可以分享一下么,或者推荐一个好的学习平台
赵4老师 2016-04-06
  • 打赏
  • 举报
回复
再新的语法,也跳不出图灵机的圈圈。
yshuise 2016-04-06
  • 打赏
  • 举报
回复
祁宇的书还可以吧!
列子汤问 2016-04-05
  • 打赏
  • 举报
回复
最好有个升级到C++11或者C++14的check list,来帮助各个项目的架构师进行升级。
qq_34523973 2016-04-03
  • 打赏
  • 举报
回复
大家好,专家好,很高兴认识你们 今日前来拜访是想和大家探讨一道C语言的题目 题目:非洲大地是一个异常凶猛的动物王国,老虎,狮子,豹子是顶层的食肉动物,他们不但捕食兔子、羚羊、斑马等食草性动物来生存,食肉动物也可以互相吃掉比较弱小的食肉动物,这些动物的排泄物可以补养草木,让其生长,满足食草动物的需要。请模拟该生态系统的动态循环过程,寻找调节某类动物数量的方式
Evankaka 版主 2016-03-04
  • 打赏
  • 举报
回复
支持大牛多来C/C++为大家解惑!!!!!!
a7879944 2015-08-18
  • 打赏
  • 举报
回复
我想请高手帮我制作一个软件。。有报酬。。。。13599313363电话。511190009QQ。。可以联系我。林。
qq_29611597 2015-07-07
  • 打赏
  • 举报
回复
超级能量泡泡 2015-07-03
  • 打赏
  • 举报
回复
引用 24 楼 rrrfff 的回复:
[quote=引用 16 楼 qicosmos 的回复:] auto是用的人很爽,读的人痛苦,滥用auto确实是个问题,会降低程序的可读性和可维护性,我的原则是基本类型和简单类型我不会用auto,只对于难于书写的复杂类型才用auto。与此类似的一个问题是auto+decltype返回类型后置,很多人喜欢把返回累心非常明确的比如int也后置,这实际上也是一种滥用,因为返回类型后置是为了解决难以推断函数返回类型的,而不是为了好玩的^_^。 c++17有很多重大的更新,非常值得期待,比如会增加网络库、concept、文件库、coroutine等等。c++未来会专注于如何进一步的简化语言包袱, 同时引进现代语言的各种特征, 让使用者能够在保证效率的同时更优雅便捷的提升代码的封装性和抽象性.
嗯, 可以想象C++17足以让一个VC6程序员感到格外惊艳... 不过, 语法上的现代化升级, 不可避免的造成编译器在词法语义分析上的压力加大, 这对原本就不是很快的编译过程来说无疑是种负担, 此外, 也一定程度上意味着编译器优化这块更难进行, 我没看过您的书, 不清楚您在书中是否就此进行过探讨?谢谢[/quote] C++11可以减少总代码量,而且硬件现在也较快,问题不大。
宇峰科技 2015-07-03
  • 打赏
  • 举报
回复
引用 84 楼 qicosmos 的回复:
[quote=引用 77 楼 blogtjf 的回复:] C++好书这么多,作为一名C#开发人员该如何选好一本C++开发秘籍呢?求解!
c++ primer入门吧,入门之后多实践。[/quote] 多谢!
king191923157 2015-07-02
  • 打赏
  • 举报
回复
这东西应该慢慢去适应或是习惯去用新标准,不应该刻意去用
RLib 2015-07-02
  • 打赏
  • 举报
回复
引用 43 楼 qicosmos 的回复:
升级编译器就好,win上升级到vs2013, linux升级到GCC4.8以上,clang3.4以上。
visual studio有个小缺点, 就是跨版本的向下兼容不行, 比如08的项目直接用13转换升级就可能出现很多问题, 主要问题还是08中的一些项目文件特性(比如属性文件)被抛弃了, 但在13中也没有相应转换(只有警告), 最后只能手工一个个改
RLib 2015-07-02
  • 打赏
  • 举报
回复
引用 85 楼 qicosmos 的回复:
你哪里看到我在推销书的?
也许是我关于你书的提问让对方误会了吧, 实在是不好意思 很高兴能获赠你的书
silencenet 2015-07-02
  • 打赏
  • 举报
回复
说了半天是来推销书的
qicosmos 2015-07-02
  • 打赏
  • 举报
回复
引用 82 楼 SilenceNet 的回复:
说了半天是来推销书的
你哪里看到我在推销书的?
qicosmos 2015-07-02
  • 打赏
  • 举报
回复
引用 77 楼 blogtjf 的回复:
C++好书这么多,作为一名C#开发人员该如何选好一本C++开发秘籍呢?求解!
c++ primer入门吧,入门之后多实践。
zero_226 2015-07-01
  • 打赏
  • 举报
回复
引用 79 楼 zero_226 的回复:
第一,期待您回复49楼的答案。 第二,不管我们目前用的是什么开发工具,如何确定目前我们使用的是c++标准几呢?(这个问题或许比较low,不要笑话哈,我还是想问)。 thanks
原来是我没翻页。。。。。。。。。忽略我的问题一吧,sorry!
zero_226 2015-07-01
  • 打赏
  • 举报
回复
第一,期待您回复49楼的答案。 第二,不管我们目前用的是什么开发工具,如何确定目前我们使用的是c++标准几呢?(这个问题或许比较low,不要笑话哈,我还是想问)。 thanks
宇峰科技 2015-06-30
  • 打赏
  • 举报
回复
C++好书这么多,作为一名C#开发人员该如何选好一本C++开发秘籍呢?求解!
随鑫所欲 2015-06-30
  • 打赏
  • 举报
回复
引用 12 楼 accessysq 的回复:
[quote=引用 11 楼 qicosmos 的回复:] [quote=引用 10 楼 accessysq 的回复:] 短期无法使用,IDE不支持。
升级就好。[/quote] 不能升级,因为部分功能被微软捆绑死了。只能用vs2005.不想弄太多个vs了。[/quote] 什么功能被VS2005捆绑死了,我怎么没发现呢?
加载更多回复(73)

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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