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

正文內容

最新visualc面向對象程序設計教程與實驗第二版清華大學出版社—章答案-資料下載頁

2025-06-25 01:06本頁面
  

【正文】 抽象類不能用作參數(shù)類型、函數(shù)返回值類型、或顯式轉換的類型。(3) 可以聲明指向抽象類的指針和引用,此指針可以指向它的公有派生類,進而實現(xiàn)多態(tài)性。(4) 從一個抽象類派生的具體類提供純虛函數(shù)的實現(xiàn)代碼。(5) 如果基類中含有純虛函數(shù),而其派生類卻并沒有重新定義這些純虛函數(shù)的覆蓋成員函數(shù),那么這個派生類也是抽象類,因此也不能用來定義對象。但此情況不會影響以后的派生類。(6) 含有純虛函數(shù)的類中可以包含非純虛函數(shù),但這些虛函數(shù)只能通過其派生類的對象才能被引用。(7) 如果派生類中給出了基類所有純虛函數(shù)的實現(xiàn),則該派生類不再是抽象類。(8) 在成員函數(shù)內可以調用純虛函數(shù),但在構造函數(shù)或析構函數(shù)內調用一個純虛函數(shù)將導致程序運行錯誤,因為沒有為純虛函數(shù)定義代碼。3. 給字符串類定義下列重載運算符函數(shù):(1) 賦值運算符=(2) 連接運算符+(3) 關系運算符 = = == !=includeincludeclass String{char name[256]。public:String(char*str){strcpy(name,str)。}String() { }~String(){ }String operator+(const Stringamp。)。String operator=(const Stringamp。)。bool operator(const Stringamp。)。bool operator(const Stringamp。)。bool operator=(const Stringamp。)。bool operator=(const Stringamp。)。bool operator==(const Stringamp。)。bool operator!=(const Stringamp。)。void display(){coutThe string is :nameendl。}}。static char* str。String String::operator+(const Stringamp。 a){strcpy(str,name)。strcat(str,)。return String(str)。}String String::operator=(const Stringamp。a){ strcpy(name,)。 return *this。}bool String::operator(const Stringamp。a){ if (strcmp(name,)0) return true。 else return false。}bool String::operator(const Stringamp。a){ if (strcmp(name,)0) return true。 else return false。}bool String::operator=(const Stringamp。a){ if (strcmp(name,)0 || strcmp(name,)==0) return true。 else return false。}bool String::operator=(const Stringamp。a){ if (strcmp(name,)0|| strcmp(name,)==0) return true。 else return false。}bool String::operator==(const Stringamp。a){ if (strcmp(name,)==0) return true。 else return false。}bool String::operator!=(const Stringamp。a){ if (strcmp(name,)!=0) return true。 else return false。}void main(){str=new char[256]。String demo1(Visual c++)。String demo2()。()。()。String demo3=demo1+demo2。()。String demo4。demo4=demo3。()。if(demo1demo2) coutdemo1demo2endl。else coutdemo1=demo2endl。if(demo1!=demo2) coutdemo1!=demo2endl。else coutdemo1==demo2endl。if(demo3!=demo4) coutdemo3!=demo4endl。else coutdemo3==demo4endl。}程序的運行結果為:The string is :Visual c++The string is :The string is :Visual c++The string is :Visual c++demo1demo2demo1!=demo2demo3==demo44. 現(xiàn)有一個學校管理系統(tǒng),在其中包含的處理信息有三方面,即教師、學生和職工。利用一個菜單來實現(xiàn)對它們的操作。要求使用虛函數(shù)。includeincludeincludeclass person{ friend class list。protected: char name[20]。 int age。 char add[40]。 char tele[15]。 static person *ptr。 person *next。public: person (char *,int,char *,char *)。 virtual void print()。 virtual void insert(){}。}。class student:public person{ friend class list。 int level。 float grade_point_average。public: student(char *,int,char *,char *,int,float)。 void print()。 void insert()。}。class teacher:public person{ friend class list。 float salary。public: teacher(char *,int,char *,char *,float)。 void print()。 void insert()。}。class staff:public person{ friend class list。 float hourly_wages。public: staff(char *,int,char *,char *,float)。 void print()。 void insert()。}。class list{ person *root。public: list(){root=0。} void insert_person(person *node)。 void remove(char *name)。 void print_list()。}。person::person(char *name,int age,char *add,char *tele){ strcpy(person::name,name)。 strcpy(person::add,add)。 strcpy(person::tele,tele)。 person::age=age。 next=0。}void person::print(){ cout\nname:name\n。 coutage: add\n。 coutaddress:add\n。 couttelephone number:tele\n。}student::student(char *name,int age,char *add,char *tele,int level,float grade_point_average):person(name,age,add,tele){ student::level=level。 student::grade_point_average=grade_point_average。}void student::print(){ person::print()。 coutgrade point average: grade_point_average。 coutlevel。}void student::insert(){ ptr=new student(name,age,add,tele,level,grade_point_average)。}teacher::teacher(char *name,int age,char *add,char *tele,float salary):person(name,age,add,tele){ teacher::salary=salary。}void teacher::print(){ person::print()。 coutsalary: salary\n。}void teacher::insert(){ ptr=new teacher(name,age,add,tele,salary)。}staff::staff(char *name,int age,char *add,char *tele,float hourly_wages):person(name,age,add,tele){ staff::hourly_wages=hourly_wages。}void staff::print(){ person::print()。 couthourly_wages:hourly_wages\n。}void staff::insert(){ ptr=new staff(name,age,add,tele,hourly_wages)。}void list::insert_person(person *node){ char key[20]。 strcpy(key,nodename)。 person *curr_node=root。 person *previous=0。 while(curr_node!=0amp。amp。strcmp(curr_nodename,key)0) { previous=curr_node。 curr_node=curr_nodenext。 } nodeinsert()。 nodeptrnext=curr_node。 if(previous==0) root=nodeptr。 else previousnext=nodeptr。}void list::remove(char *name){ person *curr_node=root。 person *previous=0。 while(curr_node!=0amp。amp。strcmp(curr_nodename,name)!=0) { previous=curr_node。 curr_node=curr_nodenext。 } if(curr_node!=0amp。amp。previous==0) { root=curr_nodenext。 delete curr_node。 } else if (curr_node!=0amp。amp。previous!=0) { previousnext=curr_nodenext。 delete curr_node。 }}void list::print_list(){ person *cur=root。 while(cur!=0) { curprint()。 cur=curnext。 }}person *person::ptr=0。void main(){ list people。 student stu(wangchong,20,shanghai,02455524,3,54)。 teacher tea(lining,43,beijing,01063716193,563)。 staff sta(chenling,42,qintao,01265109037,20)。 int input。 for(。) { cout1插入學生endl。 cout2插入教師endl。 cout3插入職工endl。 cout4刪除職工endl。 cout5刪除學生endl。 cout6刪除教
點擊復制文檔內容
職業(yè)教育相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1