大众日报

为您提供最新、最全的新闻资讯

科技

大众日报2024年11月14日发布:看了那么多书,你为什么还是学不会C++

作者:李彬彬 | 责任编辑:Admin

本次大会汇集了来自全球各地的科技领袖,共同探讨未来科技趋势...

【新澳好彩免费资料】

【2024新澳精准正版资料】

【2023资料免费大全】
【新澳门正版免费大全】
【澳门一码一肖一待一中四不像】
【新澳2024大全正版免费】
【澳门内部正版资料免费公开】
【新澳门最新开奖记录查询第28期】
【2024澳门正版资料大全】
【777778888王中王最新】

看了那么多书,你为什么还是学不会C++?

都说Javascript是世界上最受误解的语言,其实C++何尝不是。现在网上流传的错误的C++学习方法一抓就是一大把。很多人在学习C++的过程中也走了许多弯路,浪费了不少时间。我自己也是。走了不少弯路。所以在码农的世界中,java逐渐有了统一江湖的味道。昔日的霸主C++虽面临失宠,却一直坚守着自己的传统领域。若干年前,初学编程的人还会纠结于偏向java还是偏向C++。随着java技术的快速发展和web应用的兴起,这个问题已经很长时间没有人提起了。

C++的语法灵活丰富,支持底层调用,是大多数操作系统的编程语言,也是游戏开发和图像处理领域的首选。然而正因为它灵活多变的语法,以及对使用者编程素养的高要求,决定了它不能像java一样迅猛发展。 你可能不是C++的拥趸。但如果你想深刻地理解编程的技术,让自己编写的程序变得更高效,更优雅,C++相关书籍值得花时间去读一读。

在学习C++的人当中,为什么会存在这么多错误认识?原因主要有三个,一是C++语言的细节太多。二是一些著名的C++书籍总在(不管有意还是无意)暗示语言细节的重要性和有趣。三是现代C++库的开发哲学必须用到一些犄角旮旯的语言细节(但注意,是库设计,不是日常编程)。这些共同塑造了C++社群的整体心态和哲学。

单是第一条还未必能够成气候,其它语言的细节也不少(尽管比起C++起来还是小巫见大巫),就拿javascript来说,作用域规则,名字查找,closure,for/in,这些都是细节,而且其中还有违反直觉的。但许多动态语言的程序员的理念我猜大约是学到哪用到哪罢。但C++就不一样了,学C++之人有一种类似于被暗示的潜在心态,就是一定要先把语言核心基本上吃透了才能下手写出漂亮的程序。这首先就错了。这个意识形成的原因在第二点,C++书籍。市面上的C++书籍不计其数,但有一个共同的缺点,就是讲语言细节的书太多——《C++ gotchas》,《Effective C++》,《More Effective C++》,但无可厚非的是,C++是这样一门语言:要拿它满足现代编程理念的需求,尤其是C++库开发的需求,还必须得关注语言细节,乃至于在C++中利用语言细节已经成了一门学问。比如C++模板在设计之初根本没有想到模板元编程这回事,更没想到C++模板系统是图灵完备的,这也就导致了《Modern C++ Design》和《C++ Template Metaprogramming》的惊世骇俗。

学习最佳编码实践比学习C++更重要。看优秀的代码也比埋头用差劲的编码方式写垃圾代码要有效。直接、清晰、明了、KISS地表达意图比玩编码花招要重要…像C/C++这种系统级语言,在学习的过程中必须要涉及到一些底层知识,如内存管理、编译连接系统、汇编语言、硬件体系结构等等等等知识(注意,这不包括过分犄角旮旯的语言枝节)。这些东西也就是所谓的内功了(其实最最重要的内功还是长期学习所磨练出来的自学能力)。

所以说。C++零基础初学者学习C++,不要纠结该怎么学好,其实学习没有什么捷径,就是多练习,敲代码。有时间的时候就跟着老师学习,这样就少走弯路。不必有时候为了一个问题想了半天,还不得解决明白。

【六开彩澳门开奖结果查询今晚】 【新澳门免费原料网大全】 【新澳门资料大全正版资料六肖】 【新奥天天免费资料大全正版优势】 【新澳精准资料大全免费】 【新澳最新最快资料】 【2o24年新澳正版资料大全视频】 【新奥天天免费资料公开】

作者简介:刘姝贤,资深科技记者,专注于人工智能和数字化转型领域的报道。

最新评论

Kot 2024-11-13 16:17

比如C++模板在设计之初根本没有想到模板元编程这回事,更没想到C++模板系统是图灵完备的,这也就导致了《Modern C++ Design》和《C++ Template Metaprogramming》的惊世骇俗。

IP:15.85.3.*

吉娜·加列戈 2024-11-13 18:14

看了那么多书,你为什么还是学不会C++?

IP:15.33.6.*

诺曼·瑞杜斯 2024-11-13 23:17

随着java技术的快速发展和web应用的兴起,这个问题已经很长时间没有人提起了。

IP:26.67.3.*