扫码购买正式版题库

  • 海量题库
  • 全真模拟
  • 专项训练
  • 预测试题
  • 押题密卷
  • 错题强化

阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰( Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。 【C++代码】 #include <iostream> using namespace std; class Invoice{ public: (1) { cout<<"This is the content of the invoice!"<<endl; } }; class Decorator : public Invoice { Invoice *ticket; public: Decorator(lnvoice *t) { ticket = t; } void printInvoice( ){ if(ticket != NULL) (2); } }; class HeadDecorator : public Decorator{ public: HeadDecorator(lnvoice*t): Decorator(t) { } void printInvoice( ) { cout<< "This is the header of the invoice! "<< endl; (3) ; } }; class FootDecorator : public Decorator{ public: FootDecorator(Invoice *t): Decorator(t) { } void printlnvoice( ){ (4) ; cout<< "This is the footnote of the invoice!"<< endl; } }; int main(void) { Invoice t; FootDecorator f(&t); HeadDecorator h(&f); h.printInvoice( ); cout<<”------------------------”<<endl; FootDecorator a(NULL) ; HeadDecorator b( (5) ); b.printInvoice( ); return 0; } 程序的输出结果为: This is the header of the invoice! This is the content of the invoice! This is the footnote of the invoice! ---------------------------- This is the header of the invoice! This is the footnote of the invoice!

问答题
阅读下列说明和C++-代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】 
   某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰( Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。

【C++代码】
#include
<iostream>
using
namespace std;
class Invoice{
public:
    (1)   {       
   cout<<"This is the content of the
invoice!"<<endl;
    }
};
class
Decorator : public Invoice {
     Invoice *ticket;
public:
    Decorator(lnvoice *t)      { ticket = t; }
     void printInvoice( ){
         if(ticket != NULL)
 (2);
   }
 };
class
HeadDecorator : public Decorator{
public:
    HeadDecorator(lnvoice*t): Decorator(t) { }
     void printInvoice( ) {
            cout<< "This is the
header of the invoice! "<< endl;
     (3)     ;
    }
  };
   class FootDecorator : public Decorator{
 public:
    FootDecorator(Invoice *t): Decorator(t) { }
     void printlnvoice( ){
                 (4)   ;
             cout<< "This is the
footnote of the invoice!"<< endl;
    }
};
int main(void)
{
    Invoice t;
    FootDecorator f(&t);
    HeadDecorator h(&f);
    h.printInvoice( );
   
cout<<”------------------------”<<endl;
    FootDecorator a(NULL) ;                                                                                                             
                      
    HeadDecorator b(     (5)   );
    b.printInvoice( );
    return 0;
}
程序的输出结果为:
    This is the header of the invoice!
    This is the content of the invoice!
    This is the footnote of the invoice!
    ----------------------------
    This is the header of the invoice!
    This is the footnote of the invoice!
 

最新更新

易过题库在线搜题

热门题库