Re: [问卦] C++到底难学在哪里

楼主: wuyiulin (龙破坏剑士-巴斯达布雷达)   2023-03-06 01:55:23
物件导向,这里是机掰客家人的啦。
※ 引述 《iLeyaSin365 (365)》 之铭言:
:  
: C++是物件导向,比C困难吧?
个人是觉得物件导向比较简单,
因为体感上比较好 trace。
: 打开Cpp语言的程式码
:  
: 我看到的不外乎质朴的for循环、
:  
: 打印的语法、函数、参数。
:  
蛤?
:  
: 虽然觉得C++看来看去就是类似的感觉,甚至比javascripts感觉更简陋一些。
:  
: 好像会陡然上升坠五里雾。
:  
不知道,我没写过 JS。
:  
: 如果拿有C语言体质的rust相比,
:  
: Rust看起来好像更深奥(更多概念)。
:  
: 到底C++难在哪?
:  
:  
不知道,我没用过 RUST。
以下是菜鸡工程师的体感心得,
大家当睡前故事听听就好,
或许有些是讲错的(#。
个人比较常使用 C、modern CPP、 Python3。
以 纯C 角度看 CPP:
这玩意有够好用, vector 想塞什么就塞什么。
多维度初始化还能用填充函数,
感觉与效率就是很美!
更何况是 OOP,所以算元素的时候直接不用考虑变量型别,直接下 .size() 完全就是正确

别忘了 CPP 还有一堆 STL 威力加强…。
换句话来说,
现在要叫新手小白入门纯C的 array ,
简直就是一场灾难。
反正指标会遇到的问题就是会遇到,
写 C 家族就要指标,所以这里不考虑指标难度。
从 CPP 角度看 Python:
虽然这玩意儿可以解决一堆垃圾手刻问题
(e.g. 大数问题),
但是执行效率非常堪忧。
优点是语法魔幻,
可以指定 idx 矩阵 赋值给整个矩阵。
这在我初写 C 的时候,是想都不敢想啊(#。
Pseudo code 等级的语法翻译!
还有什么神奇的 lambda 与列表推导式…。
(C++17 好像更新了列表推导式?)
至于排除与其他语言比较,
CPP 给我的感觉算是平衡了效率与可读性。
CPP 给我比较迷幻的地方在于:
迭代器的使用还是比较困惑,
因为报错的时候给的是内存位置。
如果今天做的是随机存取的 vector 就更惨了,
想不到要捞哪里出来看。
但是设计这个迭代器应该有其用途,
不可能只为了防止内存越界…吧?
可能是我还写得不够多?
如果有知道的先辈可以在底下留言让我知道。
回到题干,CPP 到底难学在哪?
以我的体感,CPP 比 C 简单多了。
你应该要问的问题是 C 到底难学在哪?
Ummmm?
强型别、指标、++i 与 i++…?
这三个学完再开几个 array 来尻,
注意不要尻到没宣告的内存位置,
撇开没有学过的算法与资料结构,
应该就能自称入门 C 语言了吧?
以上
穴穴指交
作者: ohrring (reifpanne)   2023-10-25 21:56:00
哪部
楼主: wuyiulin (龙破坏剑士-巴斯达布雷达)   2023-10-25 21:56:00
...读什么科系居然会有女生
作者: jw0311 (冷心冽情)   2023-10-25 21:57:00
...二楼读什么科系居然会认为没有有女生
作者: hgclnh3 (安安牛腩)   2023-10-25 21:57:00
三楼读什么科系会觉得女生理所当然
作者: jw0311 (冷心冽情)   2023-10-25 22:06:00
护理系.....
楼主: wuyiulin (龙破坏剑士-巴斯达布雷达)   2023-10-25 22:36:00
电机系...

Links booklink

Contact Us: admin [ a t ] ucptt.com