女人久久久www免费人成看片,国内自拍偷拍网,国产一区二区三区免费在线观看,欧美精品三区四区,91久久国产综合久久91,欧美成人精品第一区二区三区 ,美女成人在线观看

軟題庫 移動(dòng)APP 掃碼下載APP 隨時(shí)隨地移動(dòng)學(xué)習(xí) 培訓(xùn)課程
試卷名稱 2011年上半年程序員考試下午真題試題(案例分析)
考試中心《2011年上半年程序員考試下午真題試題(案例分析)》在線考試
試卷年份2011年上半年
試題題型【分析簡答題】
試題內(nèi)容

閱讀以下說明、圖和C++代碼,填補(bǔ)C++代碼中的空缺(1)~(5),將解答寫在答題紙的對(duì)應(yīng)欄內(nèi)。
【說明】
    已知對(duì)某幾何圖形繪制工具進(jìn)行類建模的結(jié)果如圖5.1所示,其中Shape為抽象類(應(yīng)至少包含一個(gè)純虛擬( virtual)函數(shù)),表示通用圖形,Box表示矩形,Ellipse表示橢圓,Circle表示圓(即特殊的橢圓),Line表示線條。


                                   圖6-1  類圖

 下面的C++代碼用于實(shí)現(xiàn)圖5-1所給出的設(shè)計(jì)思路,將其空缺處填充完整并編譯運(yùn)行,輸出結(jié)果為:
    Ellipse
    Circle
    Ellipse
    C
    E
【C++代碼】
#include <string>
#include <iostream>
using namespace std;
class Shape{
public:
    Shape(const string& name){
    m_name= name;
    }
~Shape( ){}
    (1)     void paint( ) = 0;
  stringgetName( )const {
    return m_name;
    }
 private;
string m_name;
};
 //Box和 Line類的定義與 Ellipse類似,其代碼略
 class Ellipse  (2)  {
 public:
     Ellipse(const string& name) : Shape(name){ cout<<"Ellipse" <<end1; }
void paint( ) { cout<<getName( )<<end1;}
  };
  class Circle  (3)  {
  public:
    Circle(const string& name) : Ellipse(name){ cout<<"Circl"<<end1;
  };
  class Diagram {
public:
  void drawAShap(Shape* shape){  shape->paint( ); }
  void drawShapes( ) {
  shapes[0] = new Circle("C");
  shapes[l] = new Ellipse("E");
  for (int i=0;i<2; ++i)  {
drawAShap(shapes[i]);
  }
   }
   void close ( ){  /*刪除形狀,代碼略  */ }
 private:
   Shape* shapes[2];
 };
 int main( )
 {
   Diagram* diagram =   (4) ;
diagram->drawShapes( );
   diagram->close ( );
    (5)  diagram;
}


相關(guān)試題

推薦文章