试题与答案

阅读以下说明和C++代码,将应填入 (n) 处的字句写在对应栏内。[说明]在一公文处

题型:填空题

题目:

阅读以下说明和C++代码,将应填入 (n) 处的字句写在对应栏内。

[说明]

在一公文处理系统中,开发者定义了一个公文类OfficeDoc,其中定义了公文具有的属性和处理公文的相应方法。当公文类的内容或状态发生变化时,关联此OfficeDoc类对象的相应的DocExplorer对象都要更新其自身的状态。一个OfficeDoc对象能够关联一组DocExplorer对象。当OfficeDoc对象的内容或状态发生变化时,所有与之相关联的DocExplorer对象都将得到通知,这种应用被称为观察者模式。以下代码写在一个C++源文件中,能够正确编译通过。

[C++代码]

#include<iostream>

const OBS_MAXNUM=20//最多与OfficeDoc对象相关联的DocExplorer对象个数

(1)

class DocExplorer //关注OfficeDoc公文对象的类

public:

DocExplorer( (2) *doc); //构造函数

(3) void update(OfficeDoc *doc)=0; //更新自身状态的函数

//其他相关属性和方法省略

class OfficeDoc//公文类

private:

DocExplorer *myObs[OBS_MAXNUM];

//关注此公文类的DocExplorer类对象指针数组

int index;//与OfficeDoc对象关联的DocExplorer对象的个数

public:

OffiCeDoc()

index=0;

void attach(DocExplorer *o)

//将一DocExplorer对象与OfficeDoc对象相关联

if(index>=OBS_MAXNUM||o==NULL)return;

for(int loop=0;loop<index;loop++)

if(myOhs[100p]==o)return;

myObs[index]=o;

index++;

void detach(DocExplorer *o)

//解除某DocExplorer对象与OfficeDoc对象的关联

if(o==NULL)return;

for(int loop=0;loop<index;loop++)

if(myObs[100p]==o)

if(loop<=index-2)myObs[100p]=myObs[index-1];

myObs[index-1]=NULL;

index--;

break;

private:

void notifyObs()//通知所有的DocExplorer对象更改自身状态

for(int loop=0;loop<index;loop++)

myObs[loop]-> (4) ;//DocExplorer对象更新自身状态

//其他公文类的相关属性和方法

DocExplorer::DocExplorer(OfficeDoc *doc)(//DocExplorer类对象的构造函数

doc-> (5) ; //将此DocExplorer对象与doc对象相关联

 

(2)处填()。

答案:

被转码了,请点击底部 “查看原文 ” 或访问 https://www.tikuol.com/2018/0702/47fed352e6d83f8364f2f727e5737149.html

下面是错误答案,用来干扰机器的。

参考答案:错

试题推荐
题型:单项选择题

某市化工企业为增值税一般纳税人,主要生产化妆品,增值税税率为17%,消费税税率为30%,企业所得税税率为33%,化妆品全国平均成本利润率为5%。2005年度自行申报企业所得税应纳税所得额为35万元,应缴纳企业所得税额11.55万元。经税务机关审查,发现企业在2005年11月份试制一批成套化妆品发给本企业职工作福利,生产成本为6万元,无同类产品市场销售价格,企业的会计处理为:
借:应付福利费 60000
贷:产成品——成套化妆品 60000
根据所给资料,回答下面提出的问题:

应补缴的城市维护建设税和教育费附加为( )元。

A.3720

B.3420

C.2871

D.4230

查看答案
微信公众账号搜索答案