-
建議先看一些經典的好書,然後試著把書的內容拓展得更感興趣,尤其是一些經典的題目和一些經典的演算法,一定要把掌握得很紮實,這樣至少可以應付一些筆試,在申請的時候。
最重要的是多練習,多練習程式設計。
在練習的過程中,可以學到很多基礎語法。
到了一定水平後,就可以去專案去做了。
如今,用C++做的專案大多是那些電信、保險等,在書中很難看到類似的例子,所以似乎脫離了現實,因為不懂業務,不知道裡面用的是什麼,一下子把所有東西都搞定是不現實的。
在沒有具體專案可做的情況下,似乎更難在不脫離現實的情況下盡可能地改進。 如果有乙個好方法可以做到這一點,那就太好了。 理論與實踐相結合,絕對正確!
我目前正在閱讀機械工業出版社的<
-
多動手程式設計,不要只是寫乙個比較簡單的程式,而是嘗試寫乙個更大規模的程式,遇到會看不懂書來及時充電,只有這樣慢慢積累,水平才能慢慢提高,不可能一蹴而就,慢慢來,心應該冷靜下來, 不要浮躁,這是一大禁忌!
-
多練習問題,認真做,慢慢積累經驗。
-
實踐是檢驗真理的唯一標準!
-
了解資料結構並將演算法與語法相結合。 例如,資料結構中的鍊表和一些容器是用C++思維程式設計的。 此外,還需要徹底了解C++中封裝和多型的機理,只有當機理清晰時才能使用演算法。
總之,先學語法,再學演算法。
-
多程式設計,看看別人的程式,看完後自己程式設計序。
-
1.看看巨集。 C巨集,尤其是巨集,容易出現一些問題,以及如何解決這些問題。 同樣奇怪的是,很多從學校出來的人基本上都不知道怎麼寫巨集。
2.記憶體對齊。 如何讓自己與網際網絡搜尋保持一致,這位血愛問道。
3.假想表。 你不知道什麼是虛擬桌子,你如何證明你已經學會了?
4.物件的記憶體結構。 新增幾個指向物件的指標以獲取成員變數,並根據類宣告計算物件的大小。
5.指標的各種相互轉換。 要了解的主要事情是 C C++ 圍繞記憶體,因此相同的記憶體可以玩很多不同型別的指標加、減和減的技巧。
例如,問你 int i=4;強行將 i 的位址替換為 char*,例如 c. 然後問你什麼樣的c[2]是什麼。
6.標準庫的一些常識。 例如,迭代器將來會失敗。 如何使用 memset 等函式。
7.右值引用,移動語義。 新標準需要被理解。 這比較難理解,我喜歡問。
8.匿名函式、閉包和玩閉包的各種方式。 看看C++中的函式式程式設計會很好。
9.讓我們來看看C++中一些比較經典的設計模式,比如單例。 這是常識,我有乙個印象。
10.模板的高階遊戲玩法。 這個似乎是相對較少的人,而且是那種用尖括號括起來的東西。
沒錯,就是用模板來做函式式程式設計,畢竟圖靈是完備的。 但只要看一看,你的員工不太可能理解功能。 我知道它仍然更有說服力。
11.看看提公升。 看一看,然後說除了標準庫之外,我還使用了其他東西。
12.關於建構函式的一些陷阱,以及由此產生的各種奇怪的解決方案。 什麼是兩步結構,部分分析結構。 這兩個可以是虛擬的還是什麼?
13.大致了解 GC 和智慧型指標,並準備好讓它們讓您在 C++ 中以類似 GC 的方式管理物件。
14.現在我們正在談論 GC,如何檢查記憶體洩漏?
15.學習一些關於編譯、鏈結的知識。 例如,解釋鏈結錯誤的來源。
16.別說了,還有關於物件導向的一般問題,如多重繼承、鑽石繼承等。
17.您需要知道標準庫中常用的資料結構,以及常用操作時間有多複雜。 例如,無序地圖和地圖之間的區別。
18.多種按位運算即可玩。 你可能知道它,但要提到它。 例如,如何取出低位,如何取出高位。 向左移動後,它乘以 2 或其他東西。
-
多讀書,多練習,多除錯程式,多思考。 C++不是幾十個小時就能學會的,你需要自己上電腦,否則,你會學會它而忘記它。 建議讀書一小時,寫程式碼三小時。 NOI是乙個不錯的選擇。
-
熟悉自己知道的東西,然後熟練地使用,對於不懂的人,可以放在第一位,等你有一定的能力,可能更容易學會。
-
從頭開始。 C C+ 可以靈活地學習然後學習 C++
-
因此,為了提高效率,減少不必要的臨時物件的生成、延遲臨時不必要的物件的定義、用初始化代替賦值、在建構函式中使用建構函式初始化列表代替賦值等方法,可以有效提高程式的執行效率。 以下是示例: 1.減少臨時物件的生成。
如果函式的引數是通過傳遞物件引用而不是傳遞值來定義的,如以下示例所示,值傳遞方法將導致生成 xx 臨時物件 效率低下的方法 void function( xx xx ) void function( const xx& xx) 2.延遲臨時不必要物件的定義。在 C 中,所有區域性變數都定義在函式體的頭部,考慮到 C++ 中建立物件的成本,這不是乙個好習慣。 在以下示例中,如果在大多數情況下 bcache 是"真",延遲 xx 的定義可以大大提高函式的效率。
低效做法 高效做法 void function( bool bcache ) void function( bool bcache )return; } 在 xx xx xx 上操作;
在 xx....return; return;
3. 如果可能,使用初始化,而不是先定義,然後再分配值。 在下面的示例中,與效率較低的方法相比,高效的方法可以節省快取變數的預設構造函式呼叫開銷。 低效實踐 高效實踐 void function( const xx& xx ) oid function( const xx& xx ) (傳遞引用可以省去臨時物件構造和銷毀的過程) 4.在建構函式中使用成員變數的初始化列表,而不是在建構函式中賦值。
在下面的例子中,在低效的做法中,xx 的建構函式會先呼叫 m strname 的預設建構函式,然後生成乙個帶有空字串的臨時字串物件""初始化臨時物件,將臨時物件分配給 M strname,然後銷毀該臨時物件。 執行此操作的有效方法是僅呼叫一次 m strname 建構函式。 低效做法 低效做法 xx::
xx() xx::xx() m_strname( "類似的例子還有很多,如何編寫乙個高效的C++程式需要實踐和積累,但了解C++的底層執行機制是必不可少的一步,只要多學習和思考,編寫乙個高效的C++程式是完全可行的。
-
首先,C 是 C++ 語言的乙個子集。
C++ 語言包含了 C 語言的所有詞彙和句法內容,還增加了物件導向程式設計語言的必要內容。
C是面向過程的語言,C++是物件導向的語言。
我想改進。 c/c++
程式設計能力,最基本的知識一定要做好,尤其要重點關注指標部分、檔案、IO流等部分;
其次,要做好態度,即多做事多想,樹立好的發展思路是很有必要的;
另外,買一本厚厚的開發書,有一本與眾不同的發展書,純稿子要有針對性地講案;
最後建議多在機器上操作,**看一看就瞧瞧,熟能生巧,這是乙份經驗工;
英語口語是乙個需要循序漸進、循序漸進的過程,其實所有的學習都是這樣,不可能快速練習,只能盡快提高,如果真的練習了,可能需要一年甚至幾年的時間。 >>>More
認清自己,找出自己的蛙泳短板,然後多練習提高。 首先是閱讀更多線上游泳大師**、教學**和蛙泳文章,並更多地了解您的蛙泳動作。 二是向游泳者請教,當場分析自己的不足。 >>>More
1.積累:學習古典漢語的第一件事就是積累。 最好的積累方式就是背誦和背誦一些文言文中的重要段落,而真詞的意思、虛詞的運用、各種句型的變化,都已經包括在內了。 >>>More