天天看點

021--C++養成之路(純虛函數和純抽象類)

筆記:類似于接口函數以及接口類(具體介紹文檔後續更新········)

純虛函數:

​

#include<iostream>
#include<string>
using namespace std;
//純虛函數和抽象類
class A{
public:
  virtual void fooa()=0;
};
class B:public A{
  void fooa(){
  cout<<"這是純虛函數···"<<endl;
  }
};
int main(){
  A* a=new B();
  a->fooa();
  delete a;
  getchar();
  return 0;
}

[點選并拖拽以移動]
​      
運作結果:
021--C++養成之路(純虛函數和純抽象類)
純抽象類:
#include<iostream>
#include<string>
using namespace std;
//純虛函數和抽象類
class A{
public:
  virtual void fooa()=0;
  virtual void foob()=0;
};
class B:public A{
public:
  void fooa(){
  cout<<"這是B純虛函數···"<<endl;
  }
  void foob(){
  cout<<"bb"<<endl;
  }
};
class C:public A{
public:
  void fooa(){
  cout<<"這是C純虛函數···"<<endl;
  }
  void foob(){
  cout<<"cb"<<endl;
  }
};
int main(){
  A* a=new B();
  a->fooa();
  a->foob();
  delete a;
  a=new C();
  a->fooa();
  a->foob();
  getchar();
  return 0;
}      
運作結果:
021--C++養成之路(純虛函數和純抽象類)