试题六(共15分)阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】以下C++代码实现一个简单客户关系管理系统(CrM)中通过工厂(Customerfactory)对象来创建客户(Customer)对象的功能。客户分为创建成功的客户(realCustomer)和空客户(NullCustomer)。空客户对象是当不满足特定条件时创建或获取的对象。类间关系如图6-1所示。

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

试题六(共15分)阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】以下C++代码实现一个简单客户关系管理系统(CrM)中通过工厂(Customerfactory)对象来创建客户(Customer)对象的功能。客户分为创建成功的客户(realCustomer)和空客户(NullCustomer)。空客户对象是当不满足特定条件时创建或获取的对象。类间关系如图6-1所示。 【C++代码】#include<iostream>#include<string>usingnamespacestd;classCustomer{protected:stringname;public:(1)bollisNil()=0;(2)stringgetName()=0;﹜;classrealCustomer(3){public:realCustomer(stringname){this->name=name;﹜boolisNil(){returnfalse;﹜stringgetName(){returnname;﹜﹜;classNullCustomer(4){public:boolisNil(){returntrue;﹜stringgetName(){return〝NotAvailableinCustomerDatabase〞;﹜﹜;classCustomerfactory{public:stringnames[3]={〝rob〞,〝Joe〞,〝Julie〞﹜;public:Customer*getCustomer(stringname){for(inti=0;i<3;i++){if(names[i].(5)){returnnewrealCustomer(name);﹜﹜return(6);﹜﹜;classCrM{public:voidgetCustomer(){Customerfactory*(7);Customer*customer1=cf->getCustomer(〝rob〞);Customer*customer2=cf->getCustomer(〝Bob〞);Customer*customer3=cf->getCustomer(〝Julie〞);Customer*customer4=cf->getCustomer(〝Laura〞);cout<<〝Customers〞<<endl;cout<<Customer1->getName()<<endl;deletecustomer1;cout<<Customer2->getName()<<endl;deletecustomer2;cout<<Customer3->getName()<<endl;deletecustomer3;cout<<Customer4->getName()<<endl;deletecustomer4;deletecf;﹜﹜;intmain(){CrM*crs=newCrM();crs->getCustomer();deletecrs;return0;﹜/*程序输出为:CustomersrobNotAvailableinCustomerDatabaseJulieNotAvailableinCustomerDatabase*/

1)virtual2)virtual3):public Customer4):public Customer5)compare(name)==06)new Null Customer()7)cf=New CustomerFactory(); 【解析】 本题考察使用C++代码实现实际问题。在C++中,动态绑定是通过虚函数来实现的。此题中用到了虚函数,所以要在成员函数原型缺钱加一个关键字virtual。类RealCustomer和类NullCustomer是类Customer的派生类,因此3、4空都填public Customer。进行对比数据库中的人名compare(name)==0第6空与前面语句是相反的,一个是返回new RealCustomer(name),那么此处应填:new Null Customer()第7空,用工厂创建对象,cf=New CustomerFactory();

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top