首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
22
问题
阅读以下说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
认真阅读以下网页制作和网页编程的内容,回答问题1~5,将解答填入对应的解答栏内。(1)网页制作[说明]某网络资源站点用JSP实现了一个简单的验证码登录控制,网页效果如右图所示。[login.jsp文档的内容]
下面语句可以防止选取网页内容,请补充完整。<body______>女,何在文件A.html中使用样式表文件csai.css中定义的格式?
某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作的实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如下图所示。简述WLAN用户通过RADIUS服务器登录
试题四阅读以下说明,回答【问题1】至【问题2】,将解答填入答题纸对应的解答栏内。【说明】某系统在线讨论区采用ASP+Access开发,其主页如图4-1所示。【问题2】该网站在主页上设置了分页显示,每页显示10条留言
阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。【说明】某公司网络拓扑结构图如图3-1所示,其中S1为三层交换机。由于公司分为多个部门,网管员决定为公司各部门分别划分不同的VLAN。为便于管理,网管员应采用(1)方法划分
In C language,functions are important because they provide a way to(69)code so that a large complex program can be written by co
假设用12个二进制位表示数据。它能表示的最大无符号整数为(8);若采用原码,它能表示的最小负整数为(9)。
(73)is not a programming language.
需要在计算机网络的IP地址和物理地址之间建立映射关系,主要是由于(55),在IP地址向物理地址映射时,使用的协议是(56)。
我国软件著作权受法律保护的期限是(20)。一旦保护期限届满,权利自行终止,成为社会公众可以自由使用的知识。
随机试题
可变荷载的代表值_________、_________和_________。
男性,35岁,痰中带血2个月余,近10天出现左上肢、面部水肿。胸片检查示:右肺门块状阴影,边缘不清。考虑诊断为()
关于地面装修构造的说法,属于地面整体面层的是()。
灭火器组件不包括()。
集合资产管理业务的特点之一是综合性,即证券公司与客户可以是“一对一”,也可以是“一对多”。()
在有的国家,政府有关法律规定企业可以将未使用完的政府许可的排污指标出售给其他企业,这一做法被称为()。
事实上不知道也好,因为他们已经是无可挽救的了。他自己的处境是这样的:他眼看着他们向那个深渊走去,却无法______他们。这是多么痛苦的事!想到这里,他自己也变得忧郁了。他似乎走进了一条窄巷,找不到一个_______。外面的笑声接连地传到他的耳边,好像在讥笑
2012年9月5日,陈某到野狼快递服务部寄一部价值5000元的手机,该服务部业务员宋某承接了此笔业务。宋某收取陈某的快递费后,在陈某填写的“飞狐速递运单”上签字确认。3天后,陈某得知其包裹被宋某卷走,遂要求野狼快递服务部承担违约责任。经查:该快
Parenthoodisn’tacareer-killer.Infact,economistswithtwoormorekidstendtoproducemoreresearch,notless,thantheir
在考生文件夹下ZHAO文件夹中建立一个名为G1RL的新文件夹。
最新回复
(
0
)