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

ly1716發表於2020-10-03

筆記:類似於介面函式以及介面類(具體介紹文件後續更新········)

純虛擬函式:

​

#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;
}

[點選並拖拽以移動]
​

執行結果:

純抽象類:

#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;
}

執行結果:

 

 

 

相關文章