C++难,难于上青天

本文讨论了C++学习的难度,将其比喻为长征,指出真正的难点在于对象模型和多继承等概念。作者强调,理解C++的继承和多态并不自然,且在学习初期就应避免直接使用new创建对象。同时,文章提到了入门C++的标准,包括对野指针、垃圾回收的理解,以及对指针慎用和栈中对象多态性的认知。

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

[注:yqj2065的每一篇博文,因为时间、思路、态度、水平、防御和游戏心态等等各方面的问题,经常处于变动中,如添加一些东西,转载请谨慎 ]

看了几篇优快云的专访,如12。有类似的话:“C++入门难,个人感觉不存在这个问题。”

yqj2065觉得有必要给编程初学者一点“金玉良言”:C++难,难于上青天。


1.什么叫难

学习C++,如同两万五千里长征。看看到达陕北后,老毛领着大家痛哭流涕,红军十不存一,就知道什么是难。编程初学者,当你准备学习C++时,就要告诉自己,你的同学中会有一半的人会对编程失去兴趣。而你,要么成为混混的计算专业学生,要么挺过去走上程序员之路。当然,还有一半的人会觉得C++入门不难,而这个“入门”,只有当你再用C++ 5年,才知道当年你说的“入门”事实上连门都没有入。

如果你将C++作为C来学习,它不难;如果你将C++作为Java来学习,它不难;如果你将C++作为C++来学习,它很难。

学习C++的基本语法,没有难度;但是学习C++的对象模型则非常困难。为什么困难?不自然、不一致。在Java中非常容易讲解的继承和多态,在C++中显得那么讨厌、别扭。你能够在C++学习的一开始就理解LSP吗?还有多继承这个经典难题。

在讲OOD时,yqj2065要求不得轻易使用new创建对象。如果你学C++时,不用

Anim

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值