C與C++的真正區別,就是面向對象以及類概念的引進。正是因為這兩個概念的引進,使得編程變得簡單,編程的邏輯變得非常清晰。
C++引進了類class,使得大型軟件開發,可以做到分工協作,組裝,調試容易,bug容易厘清。用C編程很麻煩,首先要用著名的project把要編繹的C,H文件碼一起,一個也不能遺漏。組織起來很麻煩。
C++,用類class封裝。如,一個大型應用程序,其中有文件及字符編輯界面,可以用一個CFileEditClass類,圖形描畫CGraphDrawingClass,數據傳輸類CCommunicationClass,語法分析CExplainClass,軌跡計算類CContuarClass等等。
每個類是獨立的。如CFileEditClass類,可以實現應用程序界面中的文件打開、保存、刪除、傳輸、字符編輯等功能。可以安排一個人做。
每個類也是相互可引用的。如在圖形描畫中,可引用CFileEditClass中的文件打開成員,也可用軌跡計算類CContuarClass中的軌跡處理成員,生成描畫數據。
C++除了可用C的libaray庫函數處,也可用MFC的標準類庫。MFC的標準類庫容豐富,也很好用,幾乎涉及windows、通訊、網絡IO內存操作等所有編程要用的函數。
在出現問題時,我們很容易檢查出是那個類出了bug,有針對性地進行檢查。
C++的面向對象編程,邏輯非常清楚。保證了多線程之間消息的傳輸。面向對象的類封裝、繼承,是C++一大革命性的創舉。
比如,我們要做六個頁面,他們有共同的顏色色調,相同的大小,字體、字號一致等等共性,在C語言開發的,寫一個公共的函數,來初始化每一個頁面。
但對于C++,有一個更好的方法,那就是構建一個公共的父類,如CommonPropertySheet,在這個類中,除了以上的共有屬性外,還可增加消息的傳輸,異常的處理等,用來解決各PropertySheet之間,以及與windows其它線程之間的消息傳送,更好地實現多線程之間的數據協同。
C++還有更多的優點,如在字符串處理、通信處理、圖像處理等上,更精確。我是1998年開始從C轉到C++的。我覺得,不論是底層開發,還是windows的應用程序開發,只要環境允許,盡量使用C++類進行軟件開發,一定會受益匪淺。
C為面向過程的語言,C++為面向對象的語言。
C++語言源程序中比C語言多一種數據類型-----類,也就是多一種變量-----對象。
C++語言包含了C語言的全部詞法和語法的內容,同時它增加了面向對象程序設計語言所必備的內容。
以前學習C語言,看的是 如鵬網 的視頻教程——《C語言也能干大事》系列,還挺有意思的,通過開發超級瑪麗,飛機大戰,吃金幣等經典小游戲以及用C語言來開發網站,開發網站,不通過硬件來開發校園一卡通系統,蠻有成就感的,沒想到C語言還可以這么學,具體的可以到 如鵬網 官網上去了解一下;
匯編語言和C語言哪個更難是一個見仁見智的事情,每個人都會有不同的答案,綜合而言,有以下幾個因素供參考:
1、從閱讀性上看,C語言更容易理解,因此匯編語言難度大些,同時接觸一個別人編制的程序,代碼量一樣的話,肯定讀懂C語言花費的時間要少些。
2、從程序設計來說,究竟哪個難就不一定了,如果對匯編了解深入一些,那么匯編就容易很多,因為匯編很直接,也更容易把握。當然,現在很多人都比較浮躁,沒有靜心去學匯編,那么這種情況下,肯定匯編就顯得難于登天了。畢竟C語言有很多函數可以調用,而匯編就沒有那么直接利用的東西了。
如果你是女生我覺得你學c2比較好,準架車是自動擋,容易學。如果是男生,學c1好,c1能駕手動擋及自動擋,但前提是比C2難,學什么還是看自己的能力和時間,畢竟考的車型不同,難度不同。最主要還是考慮實際問題,如果只是平常代步不遠行,自動擋是首選,經常遠行的用手動擋,可以不那么費油,還能增加開車的樂趣。所以學之前參考一下,還是有必要的。