C++ primer 5th 讀完的一點心得體會

作爲一個通信的研究生,其實我對自己所從事的方向還是有很多迷茫的。本科的時候參加過很多比賽,搞過單片機、ARM嵌入式,做過信號處理,學過matlab,學過C、C++,但是始終覺得自己浮於表面,並沒有一種深入的感覺。好比我做了一個四旋翼飛行器,我知道它的控制原理,我花足夠多的時間也能看明白它裏面的每一個函數,我也可以對這個開源的飛控做適當的修改,但是也就僅此而已了,如果讓我自己從無到有的搭建這樣一個龐大的項目,我的語言基礎、理論基礎,不能支撐我做到這樣的程度。

在網上看了很多資料,再加上一位學姐的指點,我覺得,也許應該讓自己沉澱一些東西下來,看看書充充電,是最好的選擇,以彌補自己基礎上的缺陷。所以,我也想奉勸各位本科的同學,經常參加競賽或者比賽是有好處的,但是,千萬不能忽視語言的學習,做過再多項目,如果沒有基礎理論支撐,是很浮於表面的。我必須承認,後面第四部分我看的有點草率,因爲很明顯的感覺後面的實用性不如前面三部分高,後面二刷三刷的時候再繼續精讀。

好了,談談我讀完一遍的感想。

1. C++在我的理解範圍內幾乎是全能的語言,它是C語言的補充,保留了C很多面向過程的特點,但是它也讓C語言的缺點暴露無疑。相比C++,C編程的可重複利用性不高,尤其缺乏模板和重載,顯然不夠靈活。但是C的效率很高,如果使用

2. C++面向模板編程,這是我最深的感受之一,越看到後面越發有這個感覺,這個設計思想幾乎貫穿C++的每一個語言特性,函數重載、模板函數、模板類、重載運算符,讓我感覺一切皆可是模板、一切皆可重載,將你編寫的代碼的效率最大化。

3. 面向對象編程,類的繼承、封裝以及多態,但是和麪向模板有一些聯繫,基類似乎某種意義上也是派生類的模板,或者是實例化的類的通用模板,通過這樣的思維方式,把生活中面對的具體的問題,抽象成可以利用特定數據結構來表示的抽象數據,給我啓發很大,以前本科時,學習C++的時候,也有過了解,但是,一來,沒有深入接觸到運算符重載以及類的拷貝控制等部分,淺嘗輒止,二來,沒有進行大量訓練;所以這次看完書,感覺收穫很大,接觸到了實實在在的可以指導自己的寫代碼的法則與事例。

4. 面向stl編程,standard template library即標準模板庫,包含容器、算法等模塊,是學習C++的重點,不過個人覺得,學習掌握的難度並不大,但是要了解其實現過程,閱讀其源代碼應該是之後的學習方向。C語言3個庫,其餘十幾個爲C++獨有的模板庫,是C++的重要組成部分。

總結:C++是一個很強大的工具,直面物理內存,又不失高級語言的設計思想,但是通讀下來,C++的學習難度也不容小覷。未來,我打算進一步學習數據結構與算法C++描述,進一步深入瞭解,真正吃透C++的應用。

發佈了41 篇原創文章 · 獲贊 33 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章