1. 程式人生 > >第01章 預備知識

第01章 預備知識


本章內容包括:

  • C語言和C++的發展歷史和基本原理.
  • 過程性程式設計和麵向物件程式設計.
  • C++是如何在C語言的基礎上新增面向物件概念的.
  • C++是如何在C語言的基礎上新增泛型程式設計概念的.
  • 程式語言標準.
  • 建立程式的技巧.

1.1 C++簡介

  • C++融合了3種不同的程式設計方式:C語言代表的過程型語言,C++在C語言基礎上新增的類代表的面嚮物件語言,C++模板支援的泛型程式設計.

1.2 C++簡史 
1.2.1 C語言 
1.2.2 C語言程式設計原理

  • 一般來說,計算機語言要處理兩個概念—資料和演算法
    .

1.2.3 面向物件程式設計

  • 與強調演算法的過程性程式設計不同的是,OOP強調的是資料.OOP不像過程性程式設計那樣,試圖使問題滿足語言的過程性方法,而是試圖讓語言來滿足問題的要求.其理念是設計與問題的本質特性相對應的資料格式.
  • OOP程式設計方法首先設計類,他們準確地表示了程式要處理的東西.
  • OOP程式設計並不僅僅是將資料和方法合併為類定義.

1.2.4 C++和泛型程式設計(generic programming)

  • 它與OOP的目標相同,即使重用程式碼和抽象通用概念的技術更簡單.不過OOP強調的是程式設計的資料方面,而泛型程式設計強調的是獨立於特定資料型別.側重點不同.

1.2.5 C++的起源

  • C++融合了OOP,泛型程式設計和傳統的過程性方法,這表明C++強調的是實用價值,而不是意識形態方法,這也是該語言獲得成功的原因之一.

1.3 可移植性和標準

  • ANSI/ISO,致力於制定C++標準
  • ISO C++標準還吸收了ANSI C語言標準,因為C++應儘量是C語言的超集.

1.3.1 C++的發展 
1.3.2 本書遵循的C++標準 
1.4 程式建立的技巧

  • 如何讓一個C++程式執行起來 
    1. 編寫程式,程式的原始碼
    2. 編譯原始碼
    3. 將目的碼與其他程式碼連結起來,生成程式的執行階段版本,包含該最終產品的檔案被稱為可執行程式碼.

1.4.1 建立原始碼檔案 
1.4.2 編譯和連結

  • 基本的步驟,但對於具體步驟,必須檢視系統文件 
    1. UNIX編譯和連結:CC命令(注意大小寫)
    2. Linux編譯和連結:g++
    3. Windows命令列編譯器(也可以使用Cygwin和MinGW中的g++)
    4. Windows編譯器
    5. Macintosh上的C++:Xcode開發框架
  • 提示:為節省時間,可對所有示例程式使用同一個專案.方法是從專案列表中刪除前一個示例程式的原始碼檔案,並添加當前的原始碼.這樣可節省時間,工作量和磁碟空間.
  • 提示:改正錯誤時,應首先改正第一個錯誤.如果在標識為有錯誤的那一行上找不到錯誤,請檢視前一行.
  • 提示:有時,編譯器在不完全地構建程式後將出現混亂,它顯示無法改正的,無意義的錯誤訊息.在這種情況下,可以選擇Build All,重新編譯整個程式,以清除這些錯誤訊息.遺憾的是,這種情況和那些更常見的情況(即錯誤訊息只是看上去無意義,實際上有意義)很難區分.

1.5 總結