首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
56
问题
阅读以下说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
先阅读以下说明,然后将空白处的语句补充完整。[说明]以下是HTML语言的部分代码,其中,符号“//”表示该行的注释,请根据注释写出其内容。<html><head><bgsound>(1)//表示指向一个与该网页
交换机Switch1的部分配置命令如下,请将(1)~(4)空缺处的内容填写完整,以完成交换机的相关配置(注:填写答案时,配置语句的关键字要求拼写完整)。以下是两个对核心交换机Switch0的配置命令,错误的是(13),原因是(14)。
认真阅读以下网页制作和网页编程的内容,回答问题1~5,将解答填入对应的解答栏内。(1)网页制作[说明]某网络资源站点用JSP实现了一个简单的验证码登录控制,网页效果如右图所示。[login.jsp文档的内容]
连接交换机与工作站的传输介质是什么?介质需要做成直通线还是交叉线?最大长度限制为多少?若工作站A访问外部Web服务器,发往Internet的IP包经由(1)和(2)处时源IP地址分别是什么?
阅读以下说明,回答问题。[说明]在一台计算机上安装完成WindowsServer2003服务器及相应的服务组件。在该服务器上,可以通过IIS来建立哪些应用服务器?(至少写出3个以上)
为了支持SNMP协议的管理功能,在基于WindowsServer2003操作系统的网络管理站中,需要进行哪些配置工作?若在图6-7的命令行中输入“snmputilget10.1.101.49public1”命令,系统将输出一个错误信息:Er
阅读以下说明,回答问题1至问题6,将解答填入答题纸对应的解答栏内。(2008年11月下午试题二)【说明】某公司有人力资源部和销售部两个部门,各有26台主机序需接入Internet。其中销售部同时在线用户数通常小于15。ISP为公司分配
在Windows操作系统中,“回收站”可以恢复(1)上使用<Del>键删除的文件或文件夹。在“我的电脑”窗口中,如果要整理磁盘上的碎片,应选择磁盘“属性”对话框的(2)选项卡。使用“资源管理器”时,(3),不能删除文件或文件夹。
若用8位机器码表示十进制数-101,则原码表示的形式为(8);补码表示的形式为(9)。
有一个关系:学生(学号,姓名,系别)。其中规定了学号的值域是8个数字组成的字符串,这属于(23)。
随机试题
对行政机关作出的有关执照、资格证等证书注销决定不服的可以申请行政复议。()
临床诊断为最佳急诊处理方法是
慢性胃窦炎发病的病因最重要的是
男,55岁。肝硬化8年,查体有少量腹水,如患者应用利尿剂,首选的是
某甲将某乙杀死之后,为掩盖罪行又放火烧毁某乙所住房屋,结果又引起周围13家房屋着火,烧伤5人,直接经济损失13万。对某甲应当()。
监理单位与被监理单位的关系是通过( )确定的。
下列情形中,可能导致长期资产增加的是()。
A公司拟投资一个新产品,有关资料如下:(1)预计该项目需固定资产投资1500万元,可以持续五年,预计每年付现的固定成本为80万元,变动成本是每件360元。固定资产折旧采用直线法,折旧年限为5年,估计净残值为100万元(与税法估计一致)。预计各年销售量为8
张华是甲班学生,对围棋感兴趣。该班学生或者对国际象棋感兴趣,或者对军棋感兴趣;如果对围棋感兴趣,则对军棋不感兴趣。因此张华对中国象棋感兴趣。以下哪项最可能是上述论证的假设?()
VisualBasic集成环境由若干窗口组成,其中不能隐藏(关闭)的窗口是( )。
最新回复
(
0
)