问题 填空题

[说明]
下面程序定义了一个类Point及其成员函数,然后从类Point派生出类Circle及其成员函数。
[C++程序]
//POINT. H
#ifndef POINT_H
# define POINT_H
class Point
public:
Point (float x=0,float y=0) ;
void setPoint (float, float) ;
float getX () const return x;
float getY () const return y;
protected:
float :x,y;
;
#endif
//POINT.CPP
#include <iostream.h>
#include " point .h "
Point :: Point (float a, float b)
x=a; y=b
void Point::setPoint(float a,float b)
x=a; y=b
//CIRCLE . H
#ifndef CIRCLE_H
#define CIRCLE_H
#include "point.h"
class Circle: (1)
public :
Circle (float r=0.0, float x=0, float y=0) ;
void setRadius (float) ;
float getRadius () const;
float area() const;
protected:
float radius;
;
//CIRCLE.CPP
#include "iostream.h"
#include "circle .h "
Circle::Circle(float r,float a,float b)
: (2)
radius=r;
void Circle::setRadius (float r)
radius=r;
float Circle::getRadius () const
return radius;
float Circle::area () const
return 3 .14159*radius*radius ;
//text.cpp
#include <iostream.h>
#include " point .h "
#include " circle .h "
main ()

Circle c(2.5,3.7,4.3) ;
cout<< "X coordinate is "<<c.getX ()
<<\n Radius is: "<<c.getRadius ();
(3) ; //设置新的圆心 (2,2) 。
Point &pRef=c;
cout<<"\n Circle printed as a point is:"
<<"]"<< (4) <<"."<< (5) <<"]";

答案

参考答案:pRef.getY()

解析: 本题以C++语言为载体,考查面向对象程序设计中的几个重要概念——派生类型,构造函数,以及对象的引用。
首先,根据主函数中的c.getX()调用,我们可以判断类Circle对类Point的继承为公有继承,空(1)处应填入public Pointo空(2)处考查的是构造函数的初始化,在派生类的构造函数中可以调用基类的构造函数,应填入Point(a,b)。在空(3)处我们根据题目给出的说明,要求重新设置圆心为(2,2),可以调用基类设置点的函数setPoint,所以空(3)处应填入c.setPoint(2,2)。最后考察的是对象的引用,派生类对象可以初始化基类引用,在这种情况下,只能访问从相应基类中继承来的成员,而不允许访问从其他基类的成员或在派生类中增加的成员,所以,空(4)、空(5)处应分别填入pRef.getX()和pRef.getY()。

问答题


PB公司仓储生产率改进
PB公司是由世界著名的铁路客车制造商P公司与中国本地的大型货车制造商SF公司合资成立,拥有中外员工700人。为了提高企业竞争力,赢得市场,公司管理层决心改革:在半年内把影响公司竞争力的最大瓶颈之一——时间为2天/辆的产品生产周期缩短为1.5天/辆。
L先生管理的总装车间仓库接到的任务是:在不增加人员的情况下,通过内部改善实现劳动生产率的提高,保证对提速后的生产提供优质的服务。为此,L先生分析了公司整体的物流流程,首先理清了实际的运作情况。
管理现状
(1)人员状况:见下表。

职位人数(20人)
主管1
领班2
文员1
仓库管理员14
叉车工2

  (2)仓库现况:见下表。
仓库名称库管员库存件类型存储方式库存件种类
总装车间仓库14自制件 采购件可调式货架2600 2900

  (3)其他资源:见下表。
产品名称数量
重力平衡叉车2辆
电瓶叉车1辆
手动托车6辆
液压叉车1辆
周转托盘200个
发料小推车24个

  (4)仓库布局:仓库为两层,全部是货架结构1~36#,共36排,1584个库位。
  (5)仓库内部库位设置情况:在仓库初建时,对于5500余种零部件的库位设定所采取的办法是按照部件的属性、类别进行了区域划分。
  (6)入库程序:自制件由其他车间生产完成后送到入库区,然后由叉车运入仓库,再由仓库保管员按货位上架。采购件在仓库外面卸货后,由叉车运到收货区,经过检验、点数后运入库区,然后由叉车运入仓库,再由仓库保管员按货位上架。
  (7)发料程序:由仓库管理员按照工作单所列出的发料清单,对每道工序(工序18~28)所列出的零部件集料,集料后运往集料区,再由仓库保管员发往各工序。每天的发料数量是70个工作单(2天/辆);所有的订单数量是140个。
  (8)提速的影响:随着生产速度由2天/辆提高到1.5天/辆,总装仓库的收货、入库、仓储、发货等活动变得越来越繁忙,每天加班才能完成工作。统计工时如下表所示:
月份人数(人)加班时间(h)总工作时间(h)
414322496
5143562820
合计增加百分比13%

  L先生分析出占用76.4%的工作时间的活动是集料,工作过程如下:收到生产计划部门下发的工作单后,根据工作单所附带的拣货清单到货位上将所需要的零部件放到集料小车上,然后将集料小车运到发料区。显然,到库位上去集料是主要的活动,L先生分析了所有的工作单所附带的拣货清单,发现每个拣货清单上所有的零部件,库位彼此相邻的只占了60%,另外40%的零部件分散在仓库的各处,甚至不在同一层上。
解决方案
通过分析,L先生和同事们做出这样的解决方案:
(1)调整库位,将每个工作单所需要的零部件定义在相邻的库位上,减少行走路程。
(2)简化工作流程,减少运动,减少延迟,并消除简化后多余的工作区域。对采购件的入库、自制件的入库、集料发料过程,分别减少一次搬运过程。
(3)对仓库布局作了一些调整,取消入库区、集料区。
采取以上行动一个月后,L先生对总装仓库的主要活动时间做了新的统计,结果表明此解决方案是有效的。
案例分析要求:

结合案例说明货物分拣的主要方式。

判断题