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

正文內(nèi)容

c面向?qū)ο蟪绦蛟O(shè)計(jì)教案精選5篇-展示頁

2024-11-03 22:26本頁面
  

【正文】 然屬于覆蓋,不屬于重載。如果派生類定義了與基類同名的新數(shù)據(jù)成員或成員函數(shù),則此派生類的成員就覆蓋了基類的同名成員,直接使用成員名只能訪問到派生類的成員。如果在派生類的構(gòu)造函數(shù)省略了基類的初始化列表,則將調(diào)用基類的缺省構(gòu)造函數(shù)。在派生類中成員按訪問屬性劃分為四種:不可訪問的成員、私有成員、保護(hù)成員、公有成員。inline double Circle::Area(){ return PI * radius * radius。}。} double Area()。} void SetValue(int x, int y, double r){ SetXY(x,y)。} double GetRadius()const { return radius。//半徑 public: Circle(){} Circle(int x, int y, double r): Point(x,y){ SetRadius(r)。} Test():b(10),c(a){ a=20。c=a,因變量a還沒分配空間 public: Test(int i,int j,int amp。c。const int b。引用類型的數(shù)據(jù)成員引用類型的數(shù)據(jù)成員也只能通過構(gòu)造函數(shù)的初始化列表來進(jìn)行初始化。} const成員函數(shù)不能更新對(duì)象的數(shù)據(jù)成員,也不能調(diào)用對(duì)象的普通成員函數(shù)。const成員函數(shù)const成員函數(shù)的說明格式如下: 類型說明符 函數(shù)名(參數(shù)表)const。通過const對(duì)象只能調(diào)用它的const成員函數(shù),而不能調(diào)用普通成員函數(shù)。如:const Data Mybirthday(1980,1,1)。}void Circle::Show(){ coutconst引用const引用的說明形式如下: const 類型說明符amp。const double PI=。void Show()。SetRadius(r)。} void SetRadius(double r){ radius =(r=0 ? r : 0)。} Circle(Point p, double r): center(p){ SetRadius(r)。//半徑 Point center。}int main(){ Point a(100,200), b(300,400)。y=。{ double x,y。}。y=yy。} int GetY()const { return y。y=yy。static int count。若類X是類Y的友元,Y是類Z的友元,類X不一定是類Z的友元。若類X是類Y的友元,類Y不一定是類X的友元。友元類一個(gè)類也可以作為另一個(gè)類的友元。cout 友元友元函數(shù)友元函數(shù)不是當(dāng)前類的成員函數(shù),而是獨(dú)立于當(dāng)前類的外部函數(shù),但它可以訪問該類的所有對(duì)象的成員,包括私有成員、保護(hù)成員和公有成員。int Point::count=0。} static int GetCount(){ return count。} void SetXY(int xx, int yy){ x=xx。} int GetX()const { return x。y=。} Point(Point amp。y=yy。static int count。靜態(tài)成員函數(shù)定義靜態(tài)成員函數(shù)的格式如下: static 返回類型 靜態(tài)成員函數(shù)名(參數(shù)表)。靜態(tài)數(shù)據(jù)成員在該類定義之外被初始化。從而實(shí)現(xiàn)了同一個(gè)類的不同對(duì)象之間的數(shù)據(jù)共享。 向函數(shù)傳遞對(duì)象使用對(duì)象作為函數(shù)參數(shù)使用對(duì)象指針作為函數(shù)參數(shù)使用對(duì)象引用作為函數(shù)參數(shù) 靜態(tài)成員靜態(tài)數(shù)據(jù)成員在一個(gè)類中,若將一個(gè)數(shù)據(jù)成員說明為static,這種成員稱為靜態(tài)數(shù)據(jù)成員。每當(dāng)通過一個(gè)對(duì)象調(diào)用一個(gè)成員函數(shù)時(shí),系統(tǒng)就自動(dòng)把這個(gè)this指針指向該對(duì)象。當(dāng)用指向?qū)ο蟮闹羔榿碓L問對(duì)象成員時(shí),要用“”操作符。} void Person::Show(){ cout對(duì)象數(shù)組所謂對(duì)象數(shù)組是指每一數(shù)組元素都是對(duì)象的數(shù)組。name = new char[strlen(n)+1]。sex = 。strcpy(name,)。} Person::Person(Person amp。age = a。Person::Person(char *n, int a, char s){ name = new char[strlen(n)+1]。}。} char GetSex()const { return sex。} char *GetName()const { return name。void SetAge(int a){ age = a。~Person(){ delete[] name。} Person(Person amp。sex = 39。Person(){ name = 0。char sex。void Point::Show(){ cout例:人類 Person class Person { protected: char *name。} void Show()。} void SetXY(int xx, int yy){ x=xx。} int GetX()const { return x。p){ x=。y=yy。public: Point(){}。教學(xué)方法:采用板書講解C++程序設(shè)計(jì),再加以上機(jī)練習(xí)C++編程。第一篇:《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》教案《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教案課程編號(hào):08051230課程名稱:面向?qū)ο蟪绦蛟O(shè)計(jì)(Objectoriented Programming)學(xué)時(shí):72學(xué)時(shí),其中理論學(xué)時(shí)54,上機(jī)學(xué)時(shí)18 學(xué)分::數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院 開課教研室:計(jì)算機(jī)科學(xué) 開課教師:雷小園 開課學(xué)期:第7學(xué)期授課班級(jí):04信計(jì)先修課程:C語言程序設(shè)計(jì)考核要求:考試,平時(shí)10%,實(shí)驗(yàn)20%,考試70% 使用教材:《C++面向?qū)ο蟪绦蛟O(shè)計(jì)教程(第2版)》,陳維興,清華大學(xué)出版社,2004年 《C++面向?qū)ο蟪绦蛟O(shè)計(jì)習(xí)題解答與實(shí)驗(yàn)指導(dǎo)》,陳維興,清華大學(xué)出版社,2004年教學(xué)目的與要求:《面向?qū)ο蟪绦蛟O(shè)計(jì)》是一門計(jì)算機(jī)及相關(guān)專業(yè)的重要的專業(yè)基礎(chǔ)課。本課程講述C++語言面向?qū)ο蟮幕咎匦裕?、?duì)象、派生類、繼承、運(yùn)算符重載、多態(tài)性、虛函數(shù)、函數(shù)模板、類模板、輸入輸出、流類庫、文件等,使學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和基本方法,能運(yùn)用C++語言進(jìn)行基本的面向?qū)ο蟪绦蛟O(shè)計(jì)。3章 類和對(duì)象 類與對(duì)象的基本概念 構(gòu)造函數(shù)與析構(gòu)函數(shù)例:點(diǎn)類 Point class Point { private: int x,y。Point(int xx, int yy){ x=xx。} Point(Point amp。y=。} int GetY()const { return y。y=yy。}。int age。public: Person(char *n, int a, char s)。age = 0。 39。p)。} void SetName(char *n)。} void SetSex(int s){ sex = s。} int GetAge()const { return age。} void Show()。include “” include using namespace std。strcpy(name,n)。sex = s。p){ name = new char[strlen()+1]。age = 。} void Person::SetName(char *n){ delete[] name。strcpy(name,n)。對(duì)象指針聲明對(duì)象指針的一般語法形式為:類名* 對(duì)象指針名。this指針C++為成員函數(shù)提供了一個(gè)名字為this的指針,這個(gè)指針稱為自引用指針。因此使用的數(shù)據(jù)成員就是該對(duì)象的數(shù)據(jù)成員。與一般的數(shù)據(jù)成員不同,無論建立多少個(gè)類的對(duì)象,都只有一個(gè)靜態(tài)數(shù)據(jù)的拷貝。定義靜態(tài)數(shù)據(jù)成員的格式如下: static 數(shù)據(jù)類型 數(shù)據(jù)成員名。訪問靜態(tài)數(shù)據(jù)成員可以通過對(duì)象或指針來訪問,也可以通過類名::來訪問。與靜態(tài)數(shù)據(jù)成員類似,調(diào)用公有靜態(tài)成員函數(shù)的一般格式有如下幾種: 類名::靜態(tài)成員函數(shù)名(實(shí)參表)(實(shí)參表)對(duì)象指針靜態(tài)成員函數(shù)名(實(shí)參表)例:點(diǎn)類 Point(演示靜態(tài)成員)class Point { private: int x,y。public: Point(int xx=0, int yy=0){ x=xx。count++。p){ x=。count++。} int GetY()const { return y。y=yy。} }。int main(){ Point a(100,200), b。友元成員一個(gè)類的成員函數(shù)也可以作為另一個(gè)類的友元,這種成員函數(shù)不僅可以訪問自己所在類對(duì)象中的所有成員,還可以訪問friend聲明語句所在類對(duì)象中的所有成員。友元關(guān)系是單向的,不具有交換性。友元關(guān)系也不具有傳遞性。例:點(diǎn)類 Point(演示友元)class Point { private: int x,y。public: Point(int xx=0, int yy=0){ x=xx。} int GetX()const { return x。} void SetXY(int xx, int yy){ x=xx。} friend double Dist(Point p1, Point p2)。friend double Dist(Point p1, Point p2)。x=。return sqrt(x*x+y*y)。cout例:圓類 Circle(包含Point類的寫法)class Circle { private: double radius。//圓心 public: Circle(){} Circle(int x, int y, double r): center(x,y){ SetRadius(r)。} double GetRadius()const { return radius。} void SetValue(int x, int y, double r){ (x,y)。} double Area()。}。inline double Circle::Area(){ return PI * radius * radius。 引用名const對(duì)象const對(duì)象的說明形式如下: const 類名 對(duì)象名[(參數(shù)表)]。const對(duì)象的數(shù)據(jù)成員值不能被改變,const對(duì)象必須進(jìn)行初始化。const數(shù)據(jù)成員const數(shù)據(jù)成員只能通過構(gòu)造函數(shù)的初始化列表來獲得初始值。如:int GetYear()const { return year。const是函數(shù)類型的一個(gè)組成部分,因此在函數(shù)的實(shí)現(xiàn)部分也要帶關(guān)鍵字const。例class Test { private: int a。//不能寫成const int b=10,因類的定義還沒分配空間 int amp。//不能寫成const int amp。k):b(j),c(k){ a=i。} } 第4章 派生類與繼承 派生類的概念 派生類的構(gòu)造函數(shù)與析構(gòu)函數(shù)例:圓類 Circle(繼承Point類的寫法)class Circle: public Point { private: double radius。} Circle(Point p, double r): Point(p){ SetRadius(r)。} void SetRadius(double r){ radius =(r=0 ? r : 0)。SetRadius(r)。void Show()。const double PI=。}void Circle::Show(){ cout派生類繼承了它的所有基類中除構(gòu)造函數(shù)和析構(gòu)函數(shù)之外的所有成員。對(duì)從基類繼承下來的成員初始化工作是通過調(diào)用基類的構(gòu)造函數(shù)來完成的,調(diào)用方法是在派生類的構(gòu)造函數(shù)中用初始化列表。如果基類定義了帶有參數(shù)的構(gòu)造函數(shù)時(shí),派生類就應(yīng)當(dāng)定義構(gòu)造函數(shù),以便顯式地調(diào)用基類的構(gòu)造函數(shù)。在同名覆蓋的情況下,可以使用基類名+作用域分辨符來訪問基類的同名成員。對(duì)派生類的對(duì)象,構(gòu)造函數(shù)的執(zhí)行過程是:先調(diào)用基類的構(gòu)造函數(shù)(按它們被繼承時(shí)聲明的順序),再調(diào)用內(nèi)嵌對(duì)象成員的構(gòu)造函數(shù)(按內(nèi)嵌對(duì)象聲明的順序),最后執(zhí)行自己的構(gòu)造函數(shù)體中的內(nèi)容。例:學(xué)生類 Student // include “” class Student: public Person { protected: char *Department。public: Student(){ Department = 0。} Student(char *, int, char, char *, int)。stu)。} void SetDep(char*)。} char *GetDep()const { return Department。} void Show()。// include “” include using namespace std。strcpy(Department, dep)。}Student::Student(Student amp。strcpy(Department, )。}void Student::SetDep(char *dep){ delete[] Department。strcpy(Department, dep)。cout 多重繼承例1:X和Y是基類,Z從X和Y派生 class X { public: int b。} }。Y(int k){ c=k。class Z: public X, public Y { public: int d。} } 例2:X和Y都從W派生而來 class W { public: int a。} }。X(int i, int k): W(i){ b=k。class Y: public W { public: int c。} }。Z(int i, int j, int k, int l): X(i,j),Y(i,k){ d=l。cout例3:將W做為X和Y的虛基類 class W { public: int a。} }。X(int i, int k): W(i){ b=k。class Y: virtual pu
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1