標頭檔案:
#ifndef tabletenn1_h_
#define tabletenn1_h_
#includeusing namespace std;
class tabletennisplayer
void resettable(bool v)
};class ratedplayer:public tabletennisplayer
void resetrating(int r)
};#endif
函式實現:
#include#include"tabtenn1.h"
using namespace std;
tabletennisplayer::tabletennisplayer(const string &fn,const string &ln,bool ht)
void tabletennisplayer::name()const
long acctnum()
public:
acctabc(const string &s="none",long an=-1,double bal=0.0);
void deposit(double amt);
virtual void withdraw(double amt)=0;
double balance()
virtual void viewacct()=0;
virtual ~acctabc(){};
};class brass:public acctabc;};
class brassplus:public brass
void restrate(double r)
void restowes()
};#endif
函式實現:
#include#include"acctabc.h"
using namespace std;
acctabc::acctabc(const string &s,long an,double bal) //在類的實現部分 不能有預設的引數值 否則會導致重定義
void acctabc::deposit(double amt)
void acctabc::withdraw(double amt)
brass::brass(const string &s,long an,double bal):acctabc(s,an,bal) //在類的實現部分 不能有預設的引數值 否則會導致重定義
void brass::withdraw(double amt)
if(kind==1)
else
// while (cin.get()!='\n')
// continue; 後面的不合法輸入在緩衝中的給清理掉,為下一次輸入掃清障礙。還要明白一點cin.get()是不會忽略空格和回車的,
//每次輸入的最後你總是敲擊enter以表明你的輸入結束從而為上述語句總能處理成功提供保障。
}for(int i=0;iviewacct();
coutp[0]->viewacct();
for(int i=0;i標頭檔案:
#ifndef dma_h_
#define dma_h_
#includeusing namespace std; //倆個要一起用 有第二個必須要有第乙個
class basedma
;class lackdma:public basedma
; char color[len];
public:
lackdma(char *l="none",int r=0,char *c="none");
lackdma(const basedma &b,char *c="none");
friend ostream &operator<<(ostream &os,const lackdma &l);
};class hasdma:public basedma
;#endif
函式實現:
#include"dma.h"
#include#includeusing namespace std;
basedma::basedma(char *l,int r)
basedma::basedma(const basedma &rs)
basedma &basedma::operator=(const basedma &rs)
ostream &operator<<(ostream &os,const basedma &b)
{ os<<"label:"<#include#include"dma.h"
using namespace std;
int main()
{ basedma shirt("portable",8);
lackdma ballon("red",4,"blimpo");
hasdma map("mercator",5,"buffer");
cout<<"display basedma object:\n";
cout<
第13章 演算法
一 字串反轉 void char reverse char cha 呼叫 如下 char ch hello,world char reverse ch 二 鍊錶反轉 返回反轉後的煉表頭結點 return newh 三 有序陣列合併 將有序陣列a和b的值合併到乙個陣列result當中,且仍然保持有序 ...
第12章 繼承
1 單一繼承 2 多重繼承 3 繼承的賦值 1 將派生類的物件賦值給基類的物件 例如father p son s p s 會呼叫賦值運算子 將左邊物件的成員賦值給右邊物件的成員 不能將基類的物件賦值給派生類的物件,因為要呼叫賦值運算子 基類物件中沒有派生類物件自己的成員 2 基類的指標或者引用指向派...
第13章 物件導向程式設計 13
13.13.3 迭代器 randseq和anyiter 1.randseq from random import choice class randseq object def init self,seq self.data seq def iter self return self def nex...