面向对象编程技术(作业题一)

原创 2006年05月21日 11:14:00

#include <iostream>

using namespace std;

class Building
{
protected:
 int m_nFloorNum;  // 层数
 int m_nRoomNum;   // 房间数
 int m_nArea;   // 总平方米数

public:
 Building()
 {
  m_nFloorNum = 0;
  m_nRoomNum = 0;
  m_nArea = 0;
 }

 Building(int nFloorNum, int nRoomNum, int nArea)
 {
  m_nFloorNum = nFloorNum;
  m_nRoomNum = nRoomNum;
  m_nArea = nArea;
 }

 virtual ~Building()
 {
 }

 void OutputInfo()
 {
  cout<<"层数:"<<m_nFloorNum<<endl;
  cout<<"房间数:"<<m_nRoomNum<<endl;
  cout<<"总平方米数:"<<m_nArea<<endl;
 }
};

class House : public Building
{
protected:
 int m_nBedroomNum;  // 卧室数
 int m_nBathroomNum;  // 浴室数

public:
 House()
 {
  m_nBedroomNum = 0;
  m_nBathroomNum = 0;
 }

 House(int nFloorNum, int nRoomNum, int nArea, int nBedroomNum, int nBathroomNum)
  : Building(nFloorNum, nRoomNum, nArea)
 {
  m_nBedroomNum = nBedroomNum;
  m_nBathroomNum = nBathroomNum;
 }

 virtual ~House()
 {
 }

 void OutputInfo()
 {
  Building::OutputInfo();
  cout<<"卧室数:"<<m_nBedroomNum<<endl;
  cout<<"浴室数:"<<m_nBathroomNum<<endl;
 }
};

class Office : public Building
{
protected:
 int m_nDeskNum;   // 办公桌数
 int m_nPhoneNum;  // 电话数

public:
 Office()
 {
  m_nDeskNum = 0;
  m_nPhoneNum = 0;
 }

 Office(int nFloorNum, int nRoomNum, int nArea, int nDeskNum, int nPhoneNum)
  : Building(nFloorNum, nRoomNum, nArea)
 {
  m_nDeskNum = nDeskNum;
  m_nPhoneNum = nPhoneNum;
 }

 virtual ~Office()
 {
 }

 virtual void OutputInfo()
 {
  Building::OutputInfo();
  cout<<"办公桌数:"<<m_nDeskNum<<endl;
  cout<<"电话数:"<<m_nPhoneNum<<endl;
 }
};

///////////////////////////////////////////////////////////////////////////////
int main(int argc, char* argv[])
{
 House house1;
 house1.OutputInfo();
 cout<<endl;

 House house2(7, 28, 2800, 84, 28);
 house2.OutputInfo();
 cout<<endl;

 Office office1;
 office1.OutputInfo();
 cout<<endl;

 Office office2(3, 12, 1200, 36, 36);
 office2.OutputInfo();
 cout<<endl;

 return 0;
}

相关文章推荐

面向对象编程技术

在现实生活中,我们必须弄明白我们所面对的大量的事实以及观念。为此,我们需要从表面细节中抽象出其内在逻辑,发现事物的本质。抽象法可以帮助我们揭示事物的因果,结构和表现形式,区分主要和次要。面向对象编程提...

Maxscript面向对象编程技术之封装与继承

Oop 抽象的开始 提高代码维护性,扩展性,高效性 1、封装 2、继承 3、多肽 一、从代码中解读封装和继承 Struct Cat ( Public --公开接口 -- 初始化Cat...

面向对象编程技术(c#)

一 ,一些概念  (1)概念:面向对象是一种对现实世界理解和抽象的方法,一切事物皆对象,通过面向对象的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、继续,帮助人们实现对现实世界的抽象与...

VC++面向对象编程技术

  • 2009年03月04日 10:59
  • 3.92MB
  • 下载

LabVIEW面向对象编程技术.pdf

  • 2015年04月09日 05:51
  • 348KB
  • 下载

面向接口编程技术架构图

面向接口编程技术架构图 项目做了不少,都没画过架构图,这次被要求画图,画的很丑,请大家看图本身包含的系统架构信息 一、架构整体图       1、核心是两库一线   1.1 接口...

面向对象编程技术&amp;C++ 刘康

  • 2014年05月29日 14:10
  • 826KB
  • 下载

java面向对象编程技术.rar

  • 2009年05月06日 19:41
  • 4.62MB
  • 下载

Spring学习(四)AOP-面向切面切面的编程技术

AOP的基本概念: 在软件行业里,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 AOP将应...

LabVIEW面向对象编程技术

  • 2011年02月19日 14:16
  • 349KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:面向对象编程技术(作业题一)
举报原因:
原因补充:

(最多只允许输入30个字)