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

原创 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;
}

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

#include #define _USE_MATH_DEFINES#include using namespace std;class CShape{public: virtual double A...
  • DonJikn
  • DonJikn
  • 2006年05月21日 12:25
  • 941

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

#include using namespace std;class Vehicle{protected: int m_nWheels;  // 车轮个数 double m_nWeight; // 车...
  • DonJikn
  • DonJikn
  • 2006年05月21日 22:03
  • 900

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

#include using namespace std;templateclass CStack{protected: T* m_pData; int m_nLength;  // 栈长度 int ...
  • DonJikn
  • DonJikn
  • 2006年05月21日 21:11
  • 872

Java面向对象习题练习

【练习题】01.类的成员变量 猜数字游戏一个类A有一个成员变量v有一个初值100。定义一个类对A类的成员变量v进行猜。如果大了则提示大了小了则提示小了。等于则提示猜测成功。 import jav...
  • qq_37788081
  • qq_37788081
  • 2017年10月09日 20:42
  • 511

面向对象程序设计与结构化方法的比较

1.结构化方法遵循的基本原则 结构化方法的基本思想就是将待解决的问题看作一个系统从而用系统科学的思想方法来分析和解决问题结构化方法遵循以下基本原则 (1)抽象原则 抽象原则是一切系统科学...
  • u010555688
  • u010555688
  • 2014年05月04日 16:28
  • 1573

面向对象编程的几个关键概念继承、多态、组合

一、继承、接口与多态的相关问题:1、 继承的作用?好处?坏处?继承:通过继承实现代码复用。Java中所有的类都是通过直接或间接地继程java.lang.Object类得到的。继承而得到的类称为子类,被...
  • u010159842
  • u010159842
  • 2015年06月17日 22:21
  • 1237

面向对象编程技术

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

Java学习系列(十九)Java面向对象之数据库编程

JDBC(Java Data Base Connectivity:java数据库连接):它定义了一组标准的操作数据库的接口,既然是接口,那它就是一种规范,是Java操作数据库的技术规范。 Java数据...
  • JAVE_LOVER
  • JAVE_LOVER
  • 2013年11月26日 15:46
  • 2263

面向对象的特征与“六原则一法则”

面向对象的特征: 主要有抽象、继承、封装和多态四个方面,下面是我们来详细分析它们的含义: .......... 面向对象的“六原则一法则”: 单一职责原则、开闭原则、依赖倒转原则、里氏替换原则、接口...
  • sinat_26342009
  • sinat_26342009
  • 2015年06月08日 23:43
  • 3069

Java面向对象练习

1、定义长方形类,含:   属性:宽、高(整型);   方法:求周长、面积;   构造方法3个:(1)无参——宽、高默认值为1;(2)1个参数——宽、高均为参数值;(3)2个参数——...
  • sulan2131
  • sulan2131
  • 2017年04月02日 17:30
  • 515
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:面向对象编程技术(作业题一)
举报原因:
原因补充:

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