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

正文內(nèi)容

c面向?qū)ο蟪绦蛟O(shè)計教案精選5篇-文庫吧資料

2024-11-03 22:26本頁面
  

【正文】 計習(xí)題與實驗指導(dǎo)》,鄭莉、傅仕星編著,北京:清華大學(xué)出版社,2004第三篇:C++面向?qū)ο蟪绦蛟O(shè)計教學(xué)大綱《面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)》教學(xué)大綱課程編號:課程中文名稱:面向?qū)ο蟪绦蛟O(shè)計課程英文名稱:ObjectOriented Programming 總學(xué)時: 40實驗學(xué)時: 0上機學(xué)時:學(xué)分: 適用專業(yè):軟件工程專業(yè)一、課程性質(zhì)、目的和任務(wù)(300字內(nèi))《面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)》是計算機軟件工程專業(yè)本科生的一門專業(yè)基礎(chǔ)課。實驗報告較多的時候有結(jié)果,遇到問題時說不明原因,在教師指導(dǎo)下也較難完成各項實驗作業(yè)。工作忙亂無條理。(五)不及格(很差)07 盲目地操作,只掌握50%的所學(xué)實驗技能。遇到問題常常缺乏解決的辦法,在別人啟發(fā)下能作些簡單處理,但效果不理想。學(xué)習(xí)努力。工作作風(fēng)較好。能一般完成各項實驗作業(yè)和報告。能分析和處理實驗中一些較容易的問題,掌握實驗技能的大部分。有較好的實驗習(xí)慣和工作作風(fēng)。能掌握所學(xué)實驗技能的絕大部分,對難點較大的操作完成有困難。有良好的實驗工作作風(fēng)和習(xí)慣。學(xué)生在完成實驗后應(yīng)將自己的實驗過程,結(jié)果,經(jīng)驗寫入實驗報告并提交實驗報告,實驗報告成績占10分,根據(jù)學(xué)生實驗報告的書寫質(zhì)量及實驗出勤情況打出。六、考核方式、方法及實驗成績評定方法考核方式、方法:面向?qū)ο蟪绦蛟O(shè)計實驗課成績占面向?qū)ο蟪绦蛟O(shè)計總成績的15%,即共15分。根據(jù)實驗要求對數(shù)據(jù)進行分析和誤差處理。(三)內(nèi)容及程序應(yīng)簡明扼要地寫出實驗步驟流程。:PC+Windows 2000+VC 五實驗報告的格式(本部分要求各學(xué)院設(shè)計成表格作為教學(xué)大綱附件)實驗完畢,應(yīng)用專門的實驗報告本,根據(jù)預(yù)習(xí)和實驗中的現(xiàn)象及數(shù)據(jù)記錄等,及時而認(rèn)真地寫出實驗報告。在子函數(shù)中觸發(fā)異常,在主程序中處理異常,觀察程序的執(zhí)行過程。選做,練習(xí)使用STL中的vector模板類。實驗內(nèi)容:使用函數(shù)模板實現(xiàn)一個求3個數(shù)最大值的函數(shù),并完成測試。主要儀器設(shè)備及軟件:PC+Windows 2000+VC 實驗六模板和文件(設(shè)計性實驗2學(xué)時)目的要求:理解模板的作用和語法。選做,利用類完成求函數(shù)的積分(參考教材)。對Point類重載定義一個車(vehicle)基類,有虛函數(shù)Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類,它們都有Run、Stop等成員函數(shù)。實驗內(nèi)容: 定義Point類,有坐標(biāo)x,y兩個私有成員變量。如果不把vehicle 設(shè)置為虛基類,會有什么問?編程實驗及分析原因。自行車(bicycle)類有高度(Height)等屬性,汽車(motorcycle)類有座位數(shù)(SeatNum)等屬性。定義一個基類BaseClass,有整型成員變量Number,構(gòu)造其派生類DerivedClass,定義該派生類的對象,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行情況。:Windows 2000+VC 實驗四繼承與派生(設(shè)計性實驗2學(xué)時)目的要求:學(xué)習(xí)定義和使用類的繼承關(guān)系,定義派生類;熟悉不同繼承方式下對基類成員的訪問控制; 學(xué)習(xí)利用虛基類解決二義性問題。選做:定義一個動態(tài)數(shù)組類。使用系統(tǒng)提供的string類定義字符串對象并初始化,實現(xiàn)從原始字符串中提取一個子串。定義一個具有構(gòu)造函數(shù)和析構(gòu)函數(shù)的類,如實驗一的CPU類,定義一個CPU的對象數(shù)組,觀察構(gòu)造函數(shù)的析構(gòu)函數(shù)的調(diào)用過程。主要儀器設(shè)備及軟件:Windows 2000+VC 實驗三數(shù)組、指針與字符串實驗(設(shè)計性實驗4學(xué)時)目的要求:學(xué)習(xí)使用數(shù)組;學(xué)習(xí)字符串?dāng)?shù)據(jù)的組織和處理;學(xué)習(xí)標(biāo)準(zhǔn)C++庫的使用; 掌握指針的使用方法;練習(xí)通過debug觀察指針的內(nèi)容及其所指的對象的內(nèi)容;練習(xí)通過動態(tài)內(nèi)存分配實現(xiàn)動態(tài)數(shù)組,并體會指針在其中的作用; 分別使用字符數(shù)組和標(biāo)準(zhǔn)C++庫練習(xí)處理字符串的方法。利用多文件結(jié)構(gòu)實現(xiàn)題目1), 中測試這個類,觀察相應(yīng)的成員變量取值的變化情況,要求ClientNum能夠?qū)崟r記錄客戶機對象的數(shù)量。實驗內(nèi)容:實現(xiàn)客戶機(CLIENT)類。思考并回答以下概念:函數(shù)重載,引用,類,對象,數(shù)據(jù)成員,函數(shù)成員,訪問屬性,構(gòu)造函數(shù),析構(gòu)函數(shù),類的組合,內(nèi)嵌對象,初始化列表,復(fù)制構(gòu)造函數(shù)。cpu為CPU類的一個對象,ram為RAM類的一個對象,cdrom為CDROM類的一個對象,定義并實現(xiàn)這個類,為以上的類編寫構(gòu)造和析構(gòu)函數(shù),觀察組合類和內(nèi)嵌類的構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。定義一個CPU類,包含等級(Rank)、頻率(frequency)、電壓(voltage)等屬性,有兩個公有成員函數(shù)run、stop。實驗內(nèi)容:編寫重載函數(shù)Max1可分別求取兩個整數(shù),三個整數(shù),兩個雙精度數(shù),三個雙精度數(shù)的最大值。為保證盡量在統(tǒng)一安排的上機時間內(nèi)編譯運行通過程序,學(xué)生應(yīng)事先設(shè)計好程序。二、實驗?zāi)康呐c要求 1.實驗?zāi)康耐ㄟ^本課程的學(xué)習(xí),使學(xué)生掌握面向過程的程序設(shè)計思想和編程思路,初步掌握面向?qū)ο蟮某绦蛟O(shè)計思想,學(xué)會調(diào)試程序,能獨立編寫實用的小型程序。本課程主要講述了利用C++進行程序設(shè)計的思想和方法,既有面向過程和面向?qū)ο蟮某绦蛟O(shè)計的理論知識,又包括極強的實踐應(yīng)用能力的培養(yǎng)。但有一個例外,就是如果返回類型是基類指針或引用,則可改為指向派生類的指針或引用。如果派生類沒有重新定義虛擬函數(shù),則將使用該函數(shù)的基類版本。一個未在派生類中定義的純虛函數(shù)仍舊還是一個純虛函數(shù),該派生類仍為一個抽象類。如果要在派生類中重新定義基類的方法,則將它設(shè)置為虛擬方法,否則是指為非虛擬方法如果使用指向?qū)ο蟮囊没蛑羔榿碚{(diào)用虛擬方法,程序?qū)⑹褂脼閷ο箢愋投x的方法,而不使用為引用類型或指針類型定義的方法,這稱為動態(tài)聯(lián)編或晚期聯(lián)編。class B:public A { public: void show(){ coutshow()。} 輸出為AB純虛函數(shù)和抽象類 例: class A { public: virtual void show()=0。b。} 輸出為AA虛函數(shù)的定義及使用例:引入虛函數(shù)后,上面的例子改為如下 class A { public: virtual void show(){ coutshow()。b。 虛函數(shù)引入派生類后的對象指針 例: class A { public: void show(){ coutshow()。}用explicit關(guān)鍵字,可以禁止單個參數(shù)的構(gòu)造函數(shù)用于自動類型轉(zhuǎn)換,如 class Stack { explicit Stack(int size)。}通過轉(zhuǎn)換函數(shù)講這個類的類型轉(zhuǎn)換為別的類型 如在復(fù)數(shù)Complex類中的轉(zhuǎn)換函數(shù) operator double(){ return re。} if(den == 1)return。} void Fraction::reduce(){ if(den 0){ num =num。n = k。while(n!= 0){ k = m % n。return is。f){ char ch。operator(istream amp。y){ return!(x y)。} bool operator=(Fraction amp。x, Fraction amp。} bool operator x)。x, Fraction amp。y){ return( * == * )。} bool operator==(Fraction amp。x, Fraction amp。y){ return Fraction( * , * )。} Fraction operator*(Fraction amp。Fraction::operator=(Fraction amp。return *this。den = den * 。Fraction::operator+=(Fraction amp。reduce()。den = d。include “” include using namespace std。)。operator(istream amp。)。friend bool operator=(Fraction amp。, Fraction amp。)。friend bool operator!=(Fraction amp。, Fraction amp。)。friend Fraction operator/(Fraction amp。, Fraction amp。)。friend Fraction operator(Fraction amp。, Fraction amp。operator double()。operator++()。)。Fraction amp。operator*=(Fraction amp。)。Fraction amp。operator+=(Fraction amp。} Fraction operator(){ return Fraction(num, den)。public: Fraction(int n=0, int d=1)。class Fraction { private: int num, den。return is。is, Complex amp。operatoristream amp。b){ return != || != 。}bool operator!=(Complex amp。amp。a, Complex amp。b){ return Complex( * * )/ m)。}Complex operator*(Complex amp。a, Complex amp。b){ return Complex( + , + )。}Complex operator+(Complex amp。re = t。Complex::operator*=(Complex amp。return *this。c){ re= 。}Complex amp。im += 。Complex::operator+=(Complex amp。//include“” include using namespace std。operator double(){ return re。, Complex amp。friend ostream amp。, Complex amp。)。friend bool operator==(Complex amp。, Complex amp。)。friend Complex operator*(Complex amp。, Complex amp。)。friend Complex operator+(Complex amp。operator/=(Complex amp。)。Complex amp。operator=(Complex amp。)。} Complex amp。} Complex operator+(){ return *this。} double real(){ return re。public: Complex(double r=0, double i=0){ re=r。i第5章 多態(tài)性 編譯時的多態(tài)性與運行時的多態(tài)性 函數(shù)重載 運算符重載例:復(fù)數(shù)類Complex // include using namespace std。x)const { for(int i=0。size++。i)data[i+1]=data[i]。}void SeqList::Insert(const int amp。data=new int[MaxSize]。}。x)const。int GetData(int k)const。x, int k)。} bool IsEmpty()const { return size==0。~SeqList(){ delete []data。int MaxSize。附:線性表——順序表class SeqList { private: int *data。(6)若虛基類由非虛基類派生而來,則仍然先調(diào)用基類構(gòu)造函數(shù),再調(diào)用派生類的構(gòu)造函數(shù)。(4)對于多個虛基類,構(gòu)造函數(shù)的執(zhí)行順序仍然是先左后右,自上而下。該派生類的其他基類對虛基類構(gòu)造函數(shù)的調(diào)用都自動被忽略。} } int main(){ Z t(10,20,30,40)。class Z: public X, public Y { public: int d。Y(int i, int k): W(i){ c=k。} }。class X: virtual public W { public: int b。W(int k){ a=k。} } int main(){ Z t(10,20,30,40)。class Z: public X, public Y { public: int d。Y(int i, int k): W(i){ c=k。} }。class X: public W { public: int b。W(int k){ d=k。Z(int i,int j,int k):X(i),Y(j){ d=k。} }。class Y { public: int c。X(int k){ b=k。}void Student::Show(){ Person::Show()。Department = new char[strlen(dep)+1]。Number = 。stu): Person(stu){ Department = new char[strlen()+1]。Number = num。Student::Student(char *name,int age,char sex,char *dep,int num): Person(name, age, sex){ Department = new char[strlen(dep)+1]。}。} int GetNum()const { return Number。void SetNum(int num){ Number = num。~Student(){ delete[] Department。Student(Student amp。Number = 0。int Number。析構(gòu)函數(shù)的調(diào)用次序正好和構(gòu)造函數(shù)的調(diào)用次序相反。如果派生類和基類的某個成員函數(shù)重名,但參數(shù)表不同,仍
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1