首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
65
问题
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改变。一个ImageCon结构能够关联一组ImageView结构。当ImageCon结构的内容或状态发生变化时,所有与之相关联的ImageView结构都将被更新,这种应用被称为观察者模式。以下代码采用C语言实现,能够正确编译通过。
【C代码】
#include <stdio.h>
#define OBS_MAXNUM 20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/
typedef void (1) (struc ImageCon *,struct ImageView *);
struct ImageView{
func update; /*ImageView结构采用的更新函数*/
/*其他的结构字段省略*/
};
struct ImageCon{
(2) myObs[OBS_MAXNUM];
/*存储所有与ImageCon相关联的ImageView结构指针*/
intindex; /*与ImageCon结构变量相关联的ImageView结构变量的个数*/
};
void attach(struct ImageCon *IMG,struct ImageView *ob){
/*关联Obersver结构ob与ImageCon结构IMG*/
int loop=0;
if(IMG→index>=OBS_MAXNUM||ob==NULL)return;
for(loop=0;loop<IMG→index;loop++)
if(IMG→myObs [loop]= =ob)return;
IMG→myObs[IMG→index]=ob;
IMG→index++;
}
void detach(struct ImageCon *IMG,struct ImageView *ob){
/*解除IMG结构与ob结构间的关系*/
int loop;
if(ob= =NULL)return;
for(loop=0;loop<IMG→index;loop++){
if(IMG→myObs[loop]= =ob){
if(loop<=IMG→index-2)
IMG→myObs[loop]=IMG→myObs[ (3) ];
IMG→myObs[IMG→index-1]=NULL;
IMG→index- -;
breack;
}
}
}
void updatel(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void update2(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void notifyObs(struct ImageCon *IMG){
/*当IMG结构的值发生变化时,通知与之关联的所有ImageView结构变量*/
int loop;
for(loop=0;loop<IMG→index;loop++){
(IMG→myObs[loop])→update (4);
}
}
void main(){
struct ImageCon IMG;/*定义一ImageCon变量*/
struct ImageView explorer1,explorer2;/*定义两个ImageView变量*/
/*初始化与ImageCon变量相关的ImageView变量个数为0*/
IMG.index=0;
explorer1.update=updatel;/*设置explorerl变量的更新函数*/
explorer2.update=update2;/*设置explorer2变量的更新函数*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
/*其他代码省略*/
(5);
return;
}
选项
答案
(5)notifyObs(&img)
解析
通知与ImageCon相关的所有ImageView变量。
转载请注明原文地址:https://kaotiyun.com/show/WujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
交换机Switch1的部分配置命令如下,请将(1)~(4)空缺处的内容填写完整,以完成交换机的相关配置(注:填写答案时,配置语句的关键字要求拼写完整)。以下是两个对核心交换机Switch0的配置命令,错误的是(13),原因是(14)。
DNS是应用最广泛的主机名和IP地址的转换机制,它使用(1)来处理网络中成千上万个主机和IP地址的转换。在Linux中,DNS是由BIND软件来实现的。BIND是一个(2)系统,其中的resolver程序负责产生域名信息的查询,一个称为(3)的守护进程负责
阅读以下Linux系统中关于IP地址和主机名转换的技术说明,根据要求回答问题1~问题4。【说明】计算机用户通常使用主机名来访问网络中的结点,而采用TCP/IP协议的网络是以IP地址来标记网络结点的,因此需要一种将主机名转换为IP地址的机制。
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某实验室的网络拓扑结构如图3一1所示,内部网有4个部门,要求相互之间不能通过网上邻居访问,但可以通过IP地址互相访问,SW1为三层交换机。内部网全部使用私有IP地址。现
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某论坛的首页及留言页面如图5—1、图5—2所示。在留言页面中,为保证系统运行的效率,添加了脚本程序对用户输入的留言信息进行验证,当用户输入的信息不符合要求
阅读以下说明,回答问题1至问题6,将解答填入答题纸对应的解答栏内。(2008年11月下午试题二)【说明】某公司有人力资源部和销售部两个部门,各有26台主机序需接入Internet。其中销售部同时在线用户数通常小于15。ISP为公司分配
关系数据库是(20)的集合,它由一个或多个关系模式定义。SQL语言中的数据定义功能包括对数据库、基本表、(21)和(22)的定义。设有关系Students(学号,姓名,年龄,性别,系名),如果要查询姓名至少包含5个字母,且倒数第二个字母为“G”的学生的学
Password is a secret series of(69)that enables a user to access a file, computer, or program. On multi-user systems, each user m
A user interface can be defined as the combination of hardware and software that helps people and computers(72)with each other.
在Windows命令窗口中输入(1)命令后,得到如下图所示的结果。图中结果表明(2)。(1)
随机试题
某社区负责优抚安置工作的社会工作者为了推进军休社区与驻地社区的融合,设计了一系列服务活动。下列活动中,符合上述服务目标,属于中观层面介入的是()。
呼吸困难根据临床特点分为吸气性呼吸困难、呼气性呼吸困难和___________。
需要层次论是由美国社会心理学家亚伯拉罕·马斯洛提出的,认为激励可以看成是对具体的社会系统中未满足的需要进行刺激的行为过程。请简述马斯洛需要层次论的主要内容。
脑血栓致病之本为
根据《药品经营质量管理规范》,有关药品批发企业人员的资质,说法错误的是
破伤风治疗的中心环节是()。
以下哪项是按会计要素不同分类的会计科目( )。
下列关于美国市场短期国债与中长期国债的付息方式的说法,正确的是()。
商业银行资本的作用主要有()
如图所示是Windows2003系统DNS服务器中增加的1条资源记录,下列关于该资源记录的描述中,正确的是()。Ⅰ创建的资源记录为邮件交换器记录Ⅱ创建该记录时,在反向查找区域中创建相应的指针记录Ⅲ该记录被客户查询时,
最新回复
(
0
)