書き換え_カバー(16)

8388 ワード

#ifndef _A_H_
#define _A_H_
class A{
public:
	void show(int a);
	void virtual show(int a1, int b1);

};
#endif
#include "A.h"
#include 
using namespace std;
void A::show(int a) {
	cout << "A::show(int a) = " <<  a << endl;
}

void A::show(int a, int b) {
	cout << " A::show(int a, int b) = " << a << endl;
}
#include "A.h"
class B :public A {
public:
	void show(int a);
	void virtual show(int a1, int b1);

};
#include "B.h"
#ifndef _B_H_
#define _B_H_
#include 
using namespace std;
void B::show(int a) {
	cout << "B::show(int a) = " << a << endl;
}

void B::show(int a, int b) {
	cout << " B::show(int a, int b) = " << a << endl;
}

#endif
#include "A.h"
#include "B.h"
/*  (  ):               。    ,    ,     ,                 。       (    ),                 ,         。               virtual  。*/
void fun() {
	B b;
	A *p = &b;//        ,     ,         
	p->show(1, 2);

	b.show(3, 4);

}


    //                ,      
	//                   ,    
	//           .


int main() {
	fun();

	return 0;
}