====== 継承の基本 ======
==== cAnimal.h ====
#pragma once
#include
using namespace std;
class cAnimal
{
private:
string mName;
public:
cAnimal();
cAnimal(string _name);
string getName();
void setName(string _name);
void sleep();
void eat();
void getup();
};
==== cAnimal.cpp ====
#include "cAnimal.h"
#include
using namespace std;
cAnimal::cAnimal()
{
mName = "";
}
cAnimal::cAnimal(string _name)
:mName(_name)
{
}
string cAnimal::getName()
{
return mName;
}
void cAnimal::setName(string _name)
{
mName = _name;
}
void cAnimal::sleep()
{
cout << "ぐーぐー" << endl;
}
void cAnimal::eat()
{
cout << "もぐもぐ" << endl;
}
void cAnimal::getup()
{
cout << "ぱちっ" << endl;
}
==== cDog.h ====
#pragma once
#include "cAnimal.h"
class cDog :
public cAnimal
{
public:
void bark();//bark動物が吠える
};
==== cDog.cpp ====
#include "cDog.h"
#include
using std::cout;
using std::endl;
void cDog::bark()
{
cout << "わん!" << endl;
}
==== theMain.cpp ====
#include "cAnimal.h"
#include "cDog.h"
#include
using std::cout;
using std::endl;
int main()
{
//cAnimal ani("pochi");
//cout << ani.getName() << endl;
//ani.eat();
//ani.sleep();
cDog john;
john.setName("ジョン");
cout << john.getName() << endl;
}