姚远如意令,万宝路香烟价格,建筑设计任务书
animal.h
#pragma once #define _crt_secure_no_warnings #include <iostream> using namespace std; class animal { public: //纯虚函数,让子类继承并且实现 virtual void voice() = 0; animal(); virtual ~animal(); }; //架构函数 //让动物叫 void letanimalcry(animal *animal);
animal.cpp
#include "animal.h" animal::animal() { cout << "animal().." << endl; } animal::~animal() { cout << "~animal()..." << endl; } void letanimalcry(animal *animal) { animal->voice(); if (animal != null) { delete animal; } }
dog.h
#pragma once #include "animal.h" class dog : public animal { public: dog(); ~dog(); virtual void voice(); };
dog.cpp
#include "dog.h" dog::dog() { cout << "dog().." << endl; } dog::~dog() { cout << "~dog().." << endl; } void dog::voice() { cout << "¹·¿ªê¼¿þá룬 555" << endl; }
cat.h
#pragma once #include "animal.h" class cat : public animal { public: cat(); ~cat(); virtual void voice(); };
cat.cpp
#include "cat.h" cat::cat() { cout << "cat().." << endl; } cat::~cat() { cout << "~cat().." << endl; } void cat::voice() { cout << "小猫开始哭了,66666" << endl; }
main.cpp
#define _crt_secure_no_warnings #include <iostream> #include "animal.h" #include "dog.h" #include "cat.h" using namespace std; int main(void) { letanimalcry(new dog); letanimalcry(new cat); #if 0 animal *dog = new dog; letanimalcry(dog); delete dog; #endif return 0; }
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
如何在没有core文件的情况下用dmesg+addr2line定位段错误
用QT制作3D点云显示器——QtDataVisualization
网友评论