首页 > 编程语言 > 详细

c++学习笔记(虚函数多态实现)

时间:2020-04-27 15:32:51      阅读:64      评论:0      收藏:0      [点我收藏+]
//fish.h
class fish
{
public:
	fish();
	virtual ~fish();
	virtual void water();
};

//fish.cpp
#include "pch.h"
#include "fish.h"
#include <iostream>
using namespace std;

fish::fish()
{
	cout << "fish build" << endl;
}


fish::~fish()
{
	cout << "fish free" << endl;
}

void fish::water() 
{ 
	cout << "Fish water. " << endl; 
}


//whale.h
#include "fish.h"
class whale :
	public fish
{
public:
	whale();
	~whale();
	void water();
};

//whale.cpp
#include "pch.h"
#include "whale.h"
#include <iostream>
using namespace std;

whale::whale()
{
	cout << "whale build" << endl;
}


whale::~whale()
{
	cout << "whale free " << endl;
}

void whale::water()
{
	cout << "whale water. " << endl;
}

 

//test.cpp
#include "test.h"
#include "pch.h"
#include "fish.h"
#include <iostream>
using namespace std;
void Fun(fish *f)
{
    f->water();
    cout << "test build" << endl;
}


//main
#include "pch.h"
#include <iostream>
#include "test.h"
#include "fish.h"
#include "whale.h"
#include "test.h"
using namespace std;

int main()
{
    std::cout << "Hello World!\n"; 
    /*
    fish *f = new fish;
    f->water();
    fish g;
    g.water();
    */
    whale *j = new whale;
    j->water();
    whale h;
    h.water();

    whale k;
    fish &l = k;
    Fun(&l);


    
//    delete f;
    delete j;
}

 

c++学习笔记(虚函数多态实现)

原文:https://www.cnblogs.com/ezlulu1314/p/12786608.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!