PTT推薦

Re: [問卦] C++到底難學在哪裡

看板Gossiping標題Re: [問卦] C++到底難學在哪裡作者
scuendless
(scu)
時間推噓 9 推:10 噓:1 →:11

程式語言主要就是拿來告訴電腦你要他做甚麼
C++是一個給你很多能力來控制電腦效能或是達到硬體極限的語言

我自己的經驗 是在學校的時候只有碰過C++03
離開學校後有三年沒有碰C++ 主要都在寫Python
那時候只覺得Python真美好 很多東西寫起來就像是Pseudo code一樣

後來在工作上重新了遇上C++

那時候最深刻的就是第一次讀Effective Modern C++
心中充滿了髒話 不斷的想說太扯了吧到底在說啥 有需要這樣嗎
讀了幾次外加工作上實際遇到一些情境之後 才逐漸了解並內化書中的內容

工作了三年之後遇到了第二次的C++使用上的震撼教育
就是開始接觸到
- lock-free programming
- template meta programming
- compile time optimization
- generic programming

認真來說到現在這些東西用了幾年 感覺還是只知道皮毛

我自己認為C++難的地方在於

1. 他的能力太強大了 但如果你沒有真的需要用上C++的情境
你只會覺得這是啥鬼東西 語法怎麼可以長這麼醜
(我第一次看到C++ lambda 然後對比 Python, 我那時候真得有點排斥)

2. 他真的太博大精深了 因為還是有很多行業都是用C++
他現在還是有很活躍的社群/standard committee 在推進他的進展
新的東西永遠學不完 然後新的東西如果沒有搭配舊的脈絡去了解
有時候你也不清楚 為什麼要這樣做

大體來上如果你沒有情境上的需要 只寫些簡單的程式
C++的基本語法雖然沒有其他語言直覺 但也不會難到哪裡去
但當你真的需要寫concurrent/low latency的程式的時候
你才會了解到這個語言有多少東西可以學 有多麼強大 同時多麼讓人挫折
但如果你喜歡寫程式 你會發現這些東西有多有趣

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 185.213.82.223 (臺灣)
PTT 網址

jhjhs33504 03/05 16:31真的很香嗎?

MK47 03/05 16:31確實

tatty5566 03/05 16:38雖然看不懂,不過推一下

CIDgreen 03/05 16:43說到底還是效能掛帥 有比 C++ 強的早

CIDgreen 03/05 16:44早就打掉 C++ 了

israelii 03/05 16:44下一篇 組合語言強大在哪裡?

pshuang 03/05 16:47C++ 高階應用真的要天分 一般人不用想了

ststLiang 03/05 16:53會動就好 其他無所謂

a7569813 03/05 16:56雖然你很想訴說C++的好,但是專業用語太

a7569813 03/05 16:56多外行人看了只會一頭霧水

kingstongyu 03/05 17:02 https://reurl.cc/pLMeQl

Sirctal 03/05 17:12所以為什麼高頻交易跟遊戲業很多還是C++

※ 編輯: scuendless (185.213.82.223 臺灣), 03/05/2023 17:35:55

yaritai 03/05 17:42還好我只學Apache

kingstongyu 03/05 17:50是要控制硬體還是用在數學的演算法?!

lf2net4589 03/05 18:01現在不是都用吸下噗了嗎?

kindaichitom 03/05 18:28script很多都幫你包好好的

kindaichitom 03/05 18:28寫起來很爽啊!但底層就不一定懂了

kindaichitom 03/05 18:29template真的是鬼畫符

CLANNAD 03/06 02:19真的 一路看著C++從03進化到現在

CLANNAD 03/06 02:19對於程式語言能做到的事一再突破自己的

CLANNAD 03/06 02:19想像 可惜出社會以來沒有一份工作碰得到

CLANNAD 03/06 02:19C++ 以後應該也更沒機會了XDrz