C++Primer Plus (第六版)阅读笔记 + 源码分析【第一章:预备知识】
- 第一章:預(yù)備知識
- C++簡介
- C++簡史
- C語言
- C語言編程原理
- 面向?qū)ο缶幊?/li>
- C++和泛型編程
- C++的起源
- 可移植性和標(biāo)準(zhǔn)
- 程序創(chuàng)建的技巧
- 創(chuàng)建源代碼文件
- 編譯和鏈接
- UNIX
- Linux
- Windows命令行編譯器
- Windows編譯器
第一章:預(yù)備知識
C++語言編程方式:
C++繼承C語言:
面向?qū)ο缶幊?#xff1a;應(yīng)付復(fù)雜程度不斷提高的現(xiàn)代編程任務(wù)而設(shè)計。
C++模板特性提供泛型編程。
C++簡介
C到C++的學(xué)習(xí)量就像從頭學(xué)習(xí)C語言一樣大。
學(xué)習(xí)C++需要擴(kuò)展思維。
C++簡史
C語言
OS:
匯編語言:
高級語言致力于解決問題,而不是針對特定硬件。
編譯器:將高級語言翻譯成特定計算機(jī)的機(jī)器語言。(不同平臺使用不同的編譯器使用同一個高級語言程序。)
C語言編程原理
計算機(jī)語言處理:數(shù)據(jù) + 算法。
數(shù)據(jù):程序使用和處理的信息。
算法:程序使用的方法。
C語言強(qiáng)調(diào)編程的算法方面。
過程化編程:程序命令計算機(jī)按照一系列流程生成特定的結(jié)果。
結(jié)構(gòu)化編程:
結(jié)構(gòu)化編程優(yōu)點:
面向?qū)ο缶幊?/h3>
OOP:
類:描述新型數(shù)據(jù)格式的規(guī)范。
對象:根據(jù)規(guī)范構(gòu)造的特定數(shù)據(jù)結(jié)構(gòu)。
類規(guī)定:
自下而上:從低級組織(類)到高級組織(程序)的處理過程。
設(shè)計有用、可靠的類是一項艱巨的任務(wù)。
廠商提供了大量有用的類庫。
可以方便地重用和修改現(xiàn)有的、經(jīng)過仔細(xì)測試的代碼。
C++和泛型編程
泛型編程:
泛型:創(chuàng)建獨立于類型的代碼。
C++的起源
C++是C語言的超集。
任何有效的C程序都是有效的C++程序。
C++程序可以使用現(xiàn)有的C軟件庫。
庫:
計算機(jī)程序:將實際問題轉(zhuǎn)換為計算機(jī)執(zhí)行的一系列操作。
OOP:聯(lián)系C++和問題所涉及的概念。
C:聯(lián)系C++和硬件。
可移植性和標(biāo)準(zhǔn)
可移植:使用不同的平臺(操作系統(tǒng)和處理器),不修改代碼,重新編譯后程序運行良好。
可移植性的障礙:
制定C++98標(biāo)準(zhǔn)。
C++03技術(shù)性修改,未改變語言特性。
理想情況下任何有效的C程序都是有效的C++程序。
ANSI C:
ANSI /ISO C++標(biāo)準(zhǔn)提供了C++標(biāo)準(zhǔn)類庫。
程序創(chuàng)建的技巧
程序運行的步驟:
4.3版本起,g++要求編譯源代碼文件時使用標(biāo)記 -std=c++0x:
創(chuàng)建源代碼文件
源文件命名必須使用正確的后綴,將文件標(biāo)識為C++文件。
告訴程序員和編譯器該文件是C++源文件。
編譯和鏈接
UNIX
編譯單個C++源代碼文件:CC spiffy.C 默認(rèn)生成 a.out可執(zhí)行文件。
只使用一個源文件,鏈接程序刪除 spiffy.o 目標(biāo)代碼文件。
編譯多個C++源代碼文件:CC my.C precious.C
使用多個源文件,編譯器不會刪除目標(biāo)代碼文件。
如果只修改 my.C 文件,進(jìn)行重新編譯:CC my.C precious.o 重新編譯 my.C 并將它與前面編譯的 precious.o 文件鏈接。
顯示指定庫。例如要訪問數(shù)學(xué)庫中定義的函數(shù):
CC usingmath.C -lmLinux
g++ spiffy.cxx鏈接C++庫:
g++ spiffy.cxx -lg++編譯多個源文件:
g++ spiffy.cxx precious.cxx生成 a.out 可執(zhí)行文件和兩個目標(biāo)代碼文件 spiffy.o 和 precious.o 。
如果修改了其中某個源代碼,例如 spiffy.cxx 則可以使用:g++ spiffy.cxx precious.o 重新編譯。
Windows命令行編譯器
g++ great.cpp編譯成功得到可執(zhí)行文件 a.exe
Windows編譯器
IDE:
- Compile:對當(dāng)前打開文件中的代碼進(jìn)行編譯。
- Build和Make:編譯項目中所有源代碼文件的代碼。(如果項目包含3個文件,只有一個被修改,則只重新編譯被修改的源文件。)
- Build All:重新編譯所有源代碼文件。
- Link:鏈接目標(biāo)代碼和所需庫代碼。
- Run和Execute:運行程序。
- Debug:以進(jìn)步方式執(zhí)行程序。
調(diào)試版本和發(fā)布版本的區(qū)別:調(diào)試版本包含額外代碼,增加增大程序,降低執(zhí)行速度,可提供詳細(xì)調(diào)試信息。
提示:改錯時,應(yīng)首先改正第一個錯誤。
總結(jié)
以上是生活随笔為你收集整理的C++Primer Plus (第六版)阅读笔记 + 源码分析【第一章:预备知识】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 派生类的拷贝构造【C++继承】
- 下一篇: s3c2440移植MQTT