看板 Gossiping
作者 tatty5566 ( )
標題 Re: [問卦] C++到底難學在哪裡
時間 Sun Mar  5 13:19:08 2023


※ 引述《iLeyaSin365 (365)》之銘言:
: C++是物件導向,比C困難吧?
: 打開Cpp語言的程式碼
: 我看到的不外乎質樸的for循環、
: 列印的語法、函數、參數。
: 雖然覺得C++看來看去就是類似的感覺,甚至比javascripts感覺更簡陋一些。
: 好像會陡然上升墜五里霧。
: 如果拿有C語言體質的rust相比,
: Rust看起來好像更深奧(更多概念)。
: 到底C++難在哪?
:

看到標題我就想問,C++是不是沒那麼適合新手學啊?

我資工大一上程設就C++,那時候用的是螞蟻書

之後不知道是我沒天分,還是教授講太爛,

學期中講到pointer我就聽不懂,直接斷然轉學

後來聽說沒程設基礎的,直接從C開始學比較容易

不知道是不是真的

--
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.33.121 (臺灣)
※ 作者: tatty5566 2023-03-05 13:19:08
※ 文章代碼(AID): #1a12PELd (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1677993550.A.567.html
Nigger5566: 從py開始學==1F 42.77.153.146 台灣 03/05 13:19
Python我沒碰過,有比較簡單喔?
s142857: C比c++簡單2F 118.150.84.182 台灣 03/05 13:19
這聽不少人講過
douge: 我從c++ 好爛 java 好棒棒聽到3F 140.112.175.205 台灣 03/05 13:19
loloman: 記憶體的配置跟觀念4F 42.72.144.150 台灣 03/05 13:20
我印象中有聽到pointer跟記憶體位置有關,但還是弄不懂
diabolica: 學機器語言5F 101.10.56.159 台灣 03/05 13:20
douge: 其他語言都死光了 結果c++還是活得好好的6F 140.112.175.205 台灣 03/05 13:20
nh60211as: 因為教的人也不一定懂7F 42.72.195.249 台灣 03/05 13:20
douge: 那些碼農去看個youtube 影片就會的語言
就注定會被淘汰的
因為被淘汰的是自己 ?8F 140.112.175.205 台灣 03/05 13:20
booth: 指標聽不懂正常 至少一半的人不適合寫程式11F 61.62.185.94 台灣 03/05 13:22
還好我跑了 = =
※ 編輯: tatty5566 (114.34.33.121 臺灣), 03/05/2023 13:25:00
joeboy: pointer聽不懂去看youtube12F 1.200.136.150 台灣 03/05 13:23
hune: 寫程式跟學歷沒有關係 要得是你的邏輯13F 27.247.231.238 台灣 03/05 13:24
olozil: 有時候是硬體姿勢不夠,會比較難理解C14F 42.73.142.76 台灣 03/05 13:24
dosiris: Pointer夠Oreilly出一本專書 你說呢15F 61.230.50.214 台灣 03/05 13:25
b2305911: 先學C再學C++ 不是很順嗎16F 49.216.232.92 台灣 03/05 13:26
LaAc: 不是 是因為指標本身就不容易
所以其實也是有人程設過了後就不用指標了17F 39.10.8.50 台灣 03/05 13:26
謝謝妳,聽到有安慰一些
riker729: 其實學C就可以了 最基礎的語言19F 1.169.249.50 台灣 03/05 13:28
gino0717: 我覺得這跟性癖比較有關 有人就是喜歡有指標的東西20F 123.194.162.12 台灣 03/05 13:28
thelittleone: 就篩選機制 撐不過去的先洗掉22F 111.71.64.244 台灣 03/05 13:28
riker729: 硬體懂一些 學會指標 其他都容易上手23F 1.169.249.50 台灣 03/05 13:28
好像是,我記得那時候講pointer的時候,好像還有講一個call by reference,這
是不是跟記憶體有關?還有什麼call by value
bh2142: C++超他媽難,modern c++噁心到不行24F 42.73.64.74 台灣 03/05 13:28
kindaichitom: pointer觀念不難,難的是語法表達
int *i;有*號,i=&j;*i=1;
同樣有*號,後面那個是dereference後面的函數指標又有更多變化
一堆人放棄是正常的
C語言只有call by value25F 1.160.68.195 台灣 03/05 13:29
bh2142: pointer根本簡單到不行31F 42.73.64.74 台灣 03/05 13:33
kindaichitom: 八卦是很多人不知道這一點32F 1.160.68.195 台灣 03/05 13:33
douge: pointer這種中高階的用法 現在也逐漸失寵了增加維護跟交接的難度
不如架構清楚一點33F 140.112.175.205 台灣 03/05 13:33
kindaichitom: C++那個template真的很噁心不要碰!!珍惜生命,遠離C++
golang還有pointer,應該不到失寵@@36F 1.160.68.195 台灣 03/05 13:34
chaoliu: 不難 但就像上面說的 第一個混淆的點就是39F 111.248.189.88 台灣 03/05 13:36
Nigger5566: 有人寫C就一定會用指標啦,底層仔離不開C的,不會指標別跟我說懂C==40F 42.77.153.146 台灣 03/05 13:36
XXXXDGC: 推11樓,寫程式要天賦的42F 42.76.64.162 台灣 03/05 13:36
chaoliu: 宣告的時候 會跟實際使用時混在一起43F 111.248.189.88 台灣 03/05 13:37
kindaichitom: 我寧可跟asm耗在一起也不碰template44F 1.160.68.195 台灣 03/05 13:37
XXXXDGC: 指標就是先篩掉不適合者的第一關卡45F 42.76.64.162 台灣 03/05 13:37
chaoliu: 建議教這段時先畫圖 圖解 不要從課本語法46F 111.248.189.88 台灣 03/05 13:38
NCKUEECS: ptr就是新手的一個崁47F 218.164.224.184 台灣 03/05 13:38
chaoliu: 下去教48F 111.248.189.88 台灣 03/05 13:38
那時候上課是念ppt,我猜投影片是書商提供的,教授就跟著唸,唸完就結束了
kindaichitom: 我覺得洪維恩的C語言書不錯49F 1.160.68.195 台灣 03/05 13:39
謝謝推薦,我來找
※ 編輯: tatty5566 (114.34.33.121 臺灣), 03/05/2023 13:40:48
peter98: 一堆資工宅  去專板喇50F 73.195.162.171 美國 03/05 13:39
kindaichitom: 指標是一個門檻,structure又是一個51F 1.160.68.195 台灣 03/05 13:39
chrisjohn214: 不覺得理解基本的指標需要什麼天賦52F 1.170.150.187 台灣 03/05 13:41
kindaichitom: 指標不需天賦,但比較底層是真的
只會python/basic的碰到會搞不懂53F 1.160.68.195 台灣 03/05 13:43
b2305911: 畫個圖真的比較好理解55F 49.216.232.92 台灣 03/05 13:44
k291154222: 我的看法 要打基本功的話從C開始 但很容易半途而廢 如果是這樣 可以由Python 培養興趣開始 比較有成就感56F 42.76.59.179 台灣 03/05 13:49
whitefox: 先學過assembly再學c/c++會比較容易入門59F 218.35.151.252 台灣 03/05 13:53
kindaichitom: 一定的.asm非常難啊
普通人都從asm教,9成以上直接放棄搞一堆暫存器,stack那麼抽象60F 1.160.68.195 台灣 03/05 13:56
yesyesyesyes: 先學C再學C++才合理啊63F 150.117.107.137 台灣 03/05 13:58
kindaichitom: 高階語言用1行就寫好了,而且直觀64F 1.160.68.195 台灣 03/05 13:58
yesyesyesyes: 先從組合語言開始學? 會嚇跑人吧65F 150.117.107.137 台灣 03/05 13:59
catvsdog: 光指標都可出一本書惹 我推 指標的藝術 寫的還不錯66F 39.14.16.61 台灣 03/05 14:00
kindaichitom: asm門檻太高了,不過學會較有成就感68F 1.160.68.195 台灣 03/05 14:01
yesyesyesyes: http://i.imgur.com/GqlCPyX.jpg69F 27.240.241.21 台灣 03/05 14:03
waterwalk: 說C簡單的 要不要去看c11....
簡單來說語言還在進步 而且互相借鑒的地方越來越多(好用功能 大家都想要70F 114.46.197.248 台灣 03/05 14:05
max0928895: 指標還算機楚,遇到STL73F 223.140.49.165 台灣 03/05 14:11
ghost90331: 肥肥我看的C相關的語言能閃就閃74F 122.100.107.138 台灣 03/05 14:12
max0928895: 那才叫天書75F 223.140.49.165 台灣 03/05 14:12
ghost90331: C C++ C#76F 122.100.107.138 台灣 03/05 14:12
maplefff: 問題就在於很愛寫成 int *i=1. *i=1
明明寫成int* i=1, *i=就可以表示很清楚兩個*的意義不同77F 42.73.195.194 台灣 03/05 14:12
CIDgreen: 程式需要天分的,不適合即早篩掉是好事硬走會越來越痛苦80F 123.192.67.106 台灣 03/05 14:40
kindaichitom: Modern C免費電子書也寫得很好82F 1.160.68.195 台灣 03/05 15:03
k798976869: 超適合新手 除非你完全不想了解底層83F 123.240.229.193 台灣 03/05 15:16
knme: 指標要理解很難 通了之後就能混飯吃84F 223.139.196.23 台灣 03/05 15:31
Wolfclaw: pointer這麼基本的概念,不懂的話其他語言也不會寫的多好85F 101.9.199.136 台灣 03/05 15:37
selfhu: 把*當作要去查水表就比較好理解了87F 42.75.200.27 台灣 03/05 15:50
fallinlove15: 教授教太爛88F 49.159.72.46 台灣 03/05 16:00
abbag: 先學 C 再學 C++ 比較好89F 114.136.237.85 台灣 03/05 16:12
askaleroux: 還出一本書 告訴你怎麼寫 不難嗎90F 111.71.38.166 台灣 03/05 17:01
tpegioe: 我也是倒在指標,但後面的物件、泛型、多型都聽得懂,也會用
@maplefff 推,對初學友善的寫法,多樣且不容易理解的寫法等將來常寫就會了91F 68.181.16.218 美國 03/05 17:04

--