freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c程序設(shè)計(北理工)ppt(留存版)

2024-11-30 15:50上一頁面

下一頁面
  

【正文】 數(shù)據(jù)類型 37 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? 布爾型( bool), 或邏輯型,占用 1個字節(jié),其值只能是真( true)或假( false)兩種情況,一般用“ 1”表示 true,用“ 0”表示 false。 32 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 詞匯 ?標(biāo)識符 是程序員聲明的單詞,例如函數(shù)名、類名、對象名等。 cout a floatingpoint number: endl。 C++的模板語法機(jī)制,為范型程序設(shè)計奠定了關(guān)鍵基礎(chǔ)。C++程序設(shè)計 北京理工大學(xué) 計算機(jī)科學(xué)技術(shù)學(xué)院 趙清杰 2 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 《 C++程序設(shè)計 》 清華大學(xué)出版社, 2021 3 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 主要內(nèi)容 第 1章 C++語言概述 第 2章 C++編程基礎(chǔ) 第 3章 函數(shù)與函數(shù)模板 第 4章 類與類模板 第 5章 運(yùn)算符重載 第 6章 繼承與派生 第 7章 多態(tài) 第 8章 異常處理 第 9章 C++標(biāo)準(zhǔn)庫 4 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 第 1章 C++語言概述 5 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 第 1章 C++語言概述 ? 本章簡單介紹 C++語言的特點(diǎn)以及C++標(biāo)準(zhǔn)庫的主要構(gòu)成 。泛型程序在代碼重用、組織性、可維護(hù)性以及效率等方面表現(xiàn)出很強(qiáng)的優(yōu)勢。 cout in hex: hex 15 endl。 C++的詞法規(guī)則 C++的詞匯包括關(guān)鍵字、標(biāo)識符、運(yùn)算符、分隔符、文字等。、 ())或者關(guān)鍵字(如 const),可以得到 擴(kuò)展數(shù)據(jù)類型 ,如數(shù)組、指針、引用等。 ? 字符串 文字,‘’ a??,‘‘ book?? ,以字符 ‘ \0?結(jié)尾。定義是說“在這里建立對象、函數(shù)等”,并分配相應(yīng)的存儲空間。參見 例 24 。 關(guān)于作用作用域與生存期的總結(jié): 常量與變量 48 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? 定義對象時, auto、 register、 static、 extern是影響對象存儲類型的幾個關(guān)鍵字。一旦定義了一種新的數(shù)據(jù)類型,我們就可以使用這種新類型。那么對于使用這些數(shù)據(jù)的算法(一般通過函數(shù)實(shí)現(xiàn)),我們是否也能封裝到一起? ? 通過關(guān)鍵字 class,可以定義一種新的數(shù)據(jù)類型,即 類 ,例如: 57 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 自定義數(shù)據(jù)類型 4. 類 class ClassX //定義 ClassX類類型 { public: //下面的成員是公有的 //成員函數(shù) SetData() void SetData(int r1, int r2){ a=r1。 int a[5] = {2, 1, 3, 5, 6}。 int* pa=amp。如用 sizeof(指針名 ),得到的是指針本身所占的字節(jié)數(shù),而不是所指內(nèi)存的字節(jié)數(shù)。常量型指針必須進(jìn)行初始化,然后指針的值不再改變,即指針的指向不變。v1。 ? 引用一旦被初始化,就不能再指代其他對象。定義字符數(shù)組時,可以逐個字符初始化,也可以用一個字符串常量初始化。 char str2[] = x+y=10。 char* cp = str1。\039。 void* pv = p1。 81 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 表達(dá)式與語句 運(yùn)算符與表達(dá)式 ? 算術(shù)運(yùn)算符與表達(dá)式 ? 關(guān)系運(yùn)算符與表達(dá)式 ? 邏輯運(yùn)算符與表達(dá)式 ? 位運(yùn)算符與表達(dá)式 ? 三元條件運(yùn)算符與表達(dá)式 ? 逗號運(yùn)算符與表達(dá)式 ? 動態(tài)內(nèi)存分配與釋放運(yùn)算符 語句 ? 簡單語句,復(fù)合語句,控制語句(選擇語句、循環(huán)語句、跳轉(zhuǎn)語句),判斷表達(dá)式的使用 82 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 運(yùn)算符與表達(dá)式 ? 根據(jù)功能,運(yùn)算符可分為算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、賦值運(yùn)算符及特殊運(yùn)算符。 a2=a2+1。例如: unsigned int a = 8。 //表達(dá)式相當(dāng)于 (a = 2*3), a*5 ? 上述表達(dá)式中,逗號前面賦值表達(dá)式的值為 6,a*5的值為 30,則逗號表達(dá)式的值為 30。 break。 3. 跳轉(zhuǎn)語句 99 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 語句 ? 在 C++中,當(dāng)表達(dá)式值為非 0,被認(rèn)為是 true;只有當(dāng)表達(dá)式的值等于 0時,才認(rèn)為是 false。上面第一種形式,一般用于 C++系統(tǒng)提供的頭文件,這些文件存放在 C++系統(tǒng)目錄下的 include子目錄下。 void Print(double x){ cout x endl。 } } int main( ) { calculator::Print(calculator::d)。如: include iostream using namespace std。 ? 本章主要介紹函數(shù)的定義與聲明,如何調(diào)用函數(shù)、函數(shù)的參數(shù)傳遞及返回類型,inline函數(shù),函數(shù)重載,帶默認(rèn)參數(shù)值的函數(shù)定義與使用,函數(shù)模板定義、重載與專門化等內(nèi)容。 ? 函數(shù)調(diào)用時,要指定函數(shù)名并提供實(shí)際參數(shù)(實(shí)參)信息。這時實(shí)際上傳遞的也是地址,不需要為形參開辟新的存儲空間,因?yàn)樾螀⒚鳛橐媒壎ㄓ趯?shí)參對象。 ? 當(dāng)函數(shù)返回類型為 void時, return語句不帶表達(dá)式,或者不使用return語句。 ? 當(dāng)函數(shù)參數(shù)為 指針 類型時,系統(tǒng)將實(shí)參對象的地址傳遞給形參指針。 ? 需要注意一點(diǎn):下面是函數(shù) func的定義,而不是聲明,因?yàn)榛ɡㄌ柎砗瘮?shù)體部分,只不過其中不含代碼。 ? 預(yù)處理命令以字符“ ”開頭,它不是程序的語句,使用的目的是為了改善程序的組織和管理。 ? 如使用 std的 cout,則要 include 輸入 /輸出頭文件,還要指明 std: include iostream int main( ) { std::cout “OK!”。 113 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 使用名字空間 ? 訪問名字空間的成員時,應(yīng)該指明該成員屬于哪個名字空間,否則編譯器找不到成員的定義代碼。 ? 名字空間( namespace)是 C++的新特性之一。 ? 下面介紹常用的預(yù)處理命令: 宏定義命令 文件包含命令 條件編譯命令 103 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 宏定義命令 ? 最簡單的宏定義命令是用一個標(biāo)識符代替另一種符號表示,例如: define PI //定義宏 PI ? C語言中常用這種方式定義宏常量,或者用帶參數(shù)的宏來描述簡單的函數(shù),例如: define f(x) 2*x //定義帶參數(shù)的宏 f(x) ? 宏定義只是符號的簡單替換,在編譯之前執(zhí)行,不能進(jìn)行語法檢查,存在安全隱患。由于 goto語句存在較大的安全隱患,盡量不用。 ? 控制語句:可以改變程序的流程。 c = ( ab ) ? a : b。 3. 邏輯運(yùn)算符與表達(dá)式 87 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 運(yùn)算符與表達(dá)式 ? 位運(yùn)算表達(dá)式由位運(yùn)算符和操作數(shù)組成,可以對整型數(shù)按二進(jìn)制位進(jìn)行操作。 c1=a1。 ? 使用運(yùn)算符 typeid可以得到一個對象的數(shù)據(jù)類型。 //結(jié)果 a的值為 6 ? C++可以將某種指針類型(指向非 const型)自動轉(zhuǎn)換成 void*型,反過來則不行。139。039。039。 *n2 = n1。 //結(jié)果 m=5 ClassX obj。這意味著定義之后,指針的值和所指對象的值都不能改變。 //錯誤! p1 = amp。數(shù)組名所指內(nèi)存區(qū)的地址和容量在數(shù)組生命期內(nèi)是不變的。一個類型為 T*的指針能夠保存 T類型對象的地址。 60 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? 在基本數(shù)據(jù)類型或者自定義數(shù)據(jù)類型基礎(chǔ)上,結(jié)合運(yùn)用修飾符(如 []、 *、amp。 double b。 3. 常量 常量與變量 50 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? volatile的語法與 const類似 。 ? 靜態(tài)局部對象的作用域與一般局部對象相同;生存期與整個程序同在。 ? 在同一作用域中不能對同一個標(biāo)識符多次定義。每個對象都與一個特定的數(shù)據(jù)類型相關(guān)聯(lián),這個類型決定了相關(guān)內(nèi)存的大小、布局、能夠存儲在該區(qū)域的值的范圍以及可以對該區(qū)域進(jìn)行哪些操作等。 ? 變量 :在程序運(yùn)行過程中,其值可以改變。 ? 用戶自定義數(shù)據(jù)類型 :在基本數(shù)據(jù)類型或者已定義的數(shù)據(jù)類型基礎(chǔ)上,用戶根據(jù)自己的需要,構(gòu)造出的新類型。 ?C++把字符和它的碼值同等看待,字符對應(yīng)的數(shù)值就是該字符的 ASCII碼。 ? 本書我們只涉及 C++標(biāo)準(zhǔn)庫,而對不同的開發(fā)環(huán)境及其類庫不做具體介紹。在類與對象的基礎(chǔ)上, C++通過繼承和動態(tài)綁定機(jī)制擴(kuò)展了抽象數(shù)據(jù)類型。 C++能夠兼容 C語言,但做了很多改進(jìn),例如對類型要求更加嚴(yán)格,輸入輸出更方便,增加了新的運(yùn)算符,允許函數(shù)和運(yùn)算符重載,增加了引用類型,提供 inline、 const等關(guān)鍵字。新的 C++標(biāo)準(zhǔn)頭文件名不帶后綴。 return 0。 C++的詞法規(guī)則 33 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 詞匯 ?運(yùn)算符 是指實(shí)現(xiàn)各種運(yùn)算的符號,如 +、 、*、 /等。 ? 浮點(diǎn)型( float, double), 即實(shí)數(shù),單精度、雙精度和長雙精度。a39。 ? 類對象通過調(diào)用構(gòu)造函數(shù)進(jìn)行初始化。 2. 變量與對象-標(biāo)識符的作用域和可見性 常量與變量 46 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? 程序中的對象,一般在需要時被創(chuàng)建,不需要時則從內(nèi)存中刪除。程序運(yùn)行時用 new申請內(nèi)存,由程序員負(fù)責(zé)何時用delete釋放內(nèi)存。 //sh值改為 RECTANGLE 自定義數(shù)據(jù)類型 1. 枚舉 53 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 ? 枚舉常量的值,最前邊的一個默認(rèn)為為 0,其后的值依次加 1; ? 枚舉常量的值也可顯式定義,未顯式定義的則在前一個值的基礎(chǔ)上加 1,如下面 BLACK值為 0, GREEN值為 1, RED值為 5,YELLOW值為 6: enum Color {BLACK, GREEN, BLUE = 4, RED, YELLOW} 自定義數(shù)據(jù)類型 1. 枚舉 54 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 自定義數(shù)據(jù)類型 2. 聯(lián)合 聯(lián)合 類型對象的每個成員都存儲在同一位置,最大存儲空間的需要量由需要存儲空間最大的成員決定。 //聲明一個對象 58 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 自定義數(shù)據(jù)類型 4. 類 ? struct類型中也可以封裝成員函數(shù)。 //b[0][0],b[0][1],b[1][0],b[1][1] b[0]表示含 2個元素 b[0][0]、 b[0][1]的一維數(shù)組 ,b[1]表示含 2個元素 b[1][0]、 b[1][1]的一維數(shù)組 ? 數(shù)組 a的元素個數(shù) : sizeof(a) / sizeof(a[0]) 63 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 擴(kuò)展數(shù)據(jù)類型 1. 數(shù)組 ? 使用數(shù)組時,不能對數(shù)組名進(jìn)行直接拷貝和比較。 ClassX* p = amp。 67 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 擴(kuò)展數(shù)據(jù)類型 指向常量的指針與常量型指針 ? 定義指針時,如用關(guān)鍵字 const修飾所指對象的數(shù)據(jù)類型,這時的指針就稱為 指向常量的指針 。v1。 //錯誤! *pv1 = v2。m1。, 39。, 39。, 39。 ? 類型轉(zhuǎn)換可分為隱式轉(zhuǎn)換和顯式轉(zhuǎn)換兩大類。 //錯誤! const int* 不能隱式轉(zhuǎn)換成 void* 1. 隱式轉(zhuǎn)換 76 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 類型轉(zhuǎn)換 ? 可以通過強(qiáng)制類型轉(zhuǎn)換運(yùn)算符實(shí)現(xiàn)類型的顯式轉(zhuǎn)換: int a = 1。 83 北京理工大學(xué) ? 計算機(jī)科學(xué)技術(shù)學(xué)院 運(yùn)算符與表達(dá)式 ? 算術(shù)表達(dá)式由算術(shù)運(yùn)算符和操作數(shù)組成,結(jié)果是算術(shù)值,值的類型與操作數(shù)的類型有關(guān)。 ? 例如:設(shè) a=1, b=2,則表達(dá)式 (ab)的值為 false,表達(dá)式 (a2)的值為 true。 ? 簡單賦值( =),復(fù)合賦值( +=、 =、 *=、 /=、%=、 amp。例如: int* p1 = new int。 default: 語句 n+1。amp。 ? 形式一 :若“標(biāo)識符”被定義過,則編譯程序段 1;否則編譯程序段 2,或者直接執(zhí)行 endif后面的程序。成員函數(shù)的定義體可以放在花括號的外面:
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1