2017上半年程序员考试案例分析真题(6)

程序员 责任编辑:小布丁 2017-05-25

添加老师微信

备考咨询

加我微信

摘要:希赛网为大家整理了2017上半年程序员考试案例分析真题,以下为第六部分。 试题六(共15分) 阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 以下C++代码实现

       希赛网为大家整理了2017上半年程序员考试案例分析真题,以下为第六部分。


       试题六(共15分)

       阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。

       【说明】

       以下C++代码实现一个简单客户关系管理系统(CrM)中通过工厂(Customerfactory)对象来创建客户(Customer)对象的功能。客户分为创建成功的客户(realCustomer)和空客户(NullCustomer)。空客户对象是当不满足特定条件时创建或获取的对象。类间关系如图6-1所示。

       6.png

       【C++代码】

       #include<iostream>

       #include<string>

       using namespace std;

       class Customer{

       protected:

       string name;

       public:

       (1)boll isNil()=0;

       (2)string getName()=0;

       ﹜;

       class realCustomer(3){

       public:

       realCustomer(string name){this->name=name;﹜

       bool isNil(){return false;﹜

       string getName(){return name;﹜

       ﹜;

       class NullCustomer(4){

       public:

       bool isNil(){return true;﹜

       string getName(){return〝Not Available in Customer Database〞;﹜

       ﹜;

       class Customerfactory{

       public:

       string names[3]={〝rob〞,〝Joe〞,〝Julie〞﹜;

       public:

       Customer*getCustomer(string name){

       for(int i=0;i<3;i++){

       if(names[i].(5)){

       return new realCustomer(name);

       ﹜

       ﹜

       return(6);

       ﹜

       ﹜;

       class CrM{

       public:

       void getCustomer(){

       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;delete customer1;

       cout<<Customer2->getName()<<endl;delete customer2;

       cout<<Customer3->getName()<<endl;delete customer3;

       cout<<Customer4->getName()<<endl;delete customer4;

       delete cf;

       ﹜

       ﹜;

       int main(){

       CrM*crs=new CrM();

       crs->getCustomer();

       delete crs;

       return 0;

       ﹜

       /*程序输出为:

       Customers

       rob

       Not Available in Customer Database

       Julie

       Not Available in Customer Database

       */



       >>>>返回目录:2017上半年程序员考试案例分析真题(汇总)
>>>>进入估分:2017上半年软考分数早知道,在线估分+真题解析
>>>>点击查看:2017上半年程序员上午真题答案和解析

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取