family_relationship.pro
#-------------------------------------------------
#
# Project created by QtCreator 2015-04-22T19:27:00
#
#-------------------------------------------------
QT += core
QT -= gui
TARGET = family_relationship
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp \
father.cpp \
mother.cpp \
child.cpp
HEADERS += \
father.h \
mother.h \
child.h
child.h
#ifndef CHILD_H
#define CHILD_H
#include <string>
using namespace std;
class Child
{
public:
Child();
string name;
void answer();
void callFather();
};
#endif // CHILD_H
father.h
#ifndef FATHER_H
#define FATHER_H
#include <string>
#include "child.h"
using namespace std;
class Father
{
public:
Father();
string name;
Child child;
void callChild();
void answer();
};
#endif // FATHER_H
mother.h
#ifndef MOTHER_H
#define MOTHER_H
class Mother
{
public:
Mother();
};
#endif // MOTHER_H
child.cpp
#include "child.h"
#include "iostream"
Child::Child():name("xiao Hua")
{
}
void Child::answer(){
cout<<endl<<name<<" is here!";
}
void Child::callFather(){
cout<<endl<<"I am calling my father!";
cout<<endl<<"Father is not here!";
}
father.cpp
#include "father.h"
#include <iostream>
Father::Father()
:name("Lao Hua")
{
}
void Father::callChild(){
cout<<endl<<"I am calling my child!";
child.answer();
}
void Father::answer(){
cout<<endl<<name<<" is here waiting for you!";
}
mother.cpp
#include "mother.h"
Mother::Mother()
{
}
main.cpp
#include <QCoreApplication>
#include "father.h"
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Father baba;
baba.callChild();
cout<<endl;
return a.exec();
}