首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
80
问题
阅读以下说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作的实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如下图所示。配置完成后,采用什么命令测试该无线网络是否
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某公司有市场部和财务部两个部门,每个部门各有20台PC,全部接到一个48口交换机上,由一台安装Linux的服务器提供DHCP服务。网络拓扑结构图如图3—1所示。
试题二阅读以下说明,回答【问题1】至【问题4】,将解答填入对应的解答栏内。【说明】某单位网络结构及各接口IP地址如图2-1所示,路由器R1的路由表结构及外部网络访问内网的路由记录如表2-1所示。【问题2】填充表2-2,
阅读以下说明,回答问题1~问题5,将解答填入对应的答案栏内。【说明】在Linux下安装、配置Apache服务,Apache服务程序h仕pd启动时需要读取配置文件httpd.conf。以下是httpd.conf配置文件的一个片段:
简要回答有关局域网传输媒体的问题。要获得最佳的数据传输安全保密性的传输媒体是哪一种?
在关系代数运算中,若对表1按(15),可以得到表2。
在进行定点原码乘法运算时,乘积的符号位是由被乘数的符号位和乘数的符号位(10)运算来获得。
通常计算机的存储器是一个由Cache、主存和辅存构成的3级存储系统。辅助存储器一般可由磁盘、磁带和光盘等存储设备组成。Cache和主存一般是一种(11)存储器。在各种辅存中,除了(12)外,大多是便于脱卸和携带的。Cache存储器一般采用(13)半导体芯片
由6个字符的7位ASCII编码排列,再加上水平垂直奇偶校验位构成下列矩阵(最后一列为水平奇偶校验位,最后一行为垂直奇偶校验位)。字符: 则X1X2X3X4处的比特
随机试题
【背景资料】某工程,施工单位按招标文件中提供的工程量清单作出报价(见下表)。施工合同约定:工程预付款为合同总价的20%,从工程进度款累计总额达到合同总价10%的月份开始,按当月工程进度款的30%扣回,扣完为止;施工过程中发生的设计变更,采用以直接
全面强直-阵挛发作分为强直期、_______和_______三期。
女,60岁,发现主动脉瓣狭窄10年,快走时心前区憋闷3年。心电图示左心室肥厚。该患者治疗宜首选
甲公司向某银行贷款100万元,乙公司以其所有的一栋房屋作抵押担保,并完成了抵押登记。现乙公司拟将房屋出售给丙公司,通知了银行并向丙公司告知了该房屋已经抵押的事实。乙、丙订立书面买卖合同后到房屋管理部门办理过户手续。下列哪些说法是正确的?(2009年卷三第5
甲是某有限合伙企业的有限合伙人。在合伙协议无特别约定的情况下,甲在合伙期间未经其他合伙人同意实施的下列行为中,违反《合伙企业法》规定的是()。
2008年1月8日,张某看到某公司的招聘启事后,于1月10日到某公司应聘。1月11日双方就试用期、劳动待遇、在职培训、违约金等事项进行协商后,达成了口头协议。张某于1月15日正式上班,2月28日双方签订了书面协议。某公司在与张某建立劳动合同关系过程中不
2015年全球发展中地区饥饿人口的比例是1990~1992年的一半的有几个地区?()若南亚地区1992年总人口数为15亿,该地区平均人口年增长率为2%,那么2002年南亚地区饥饿人口总量为多少亿人?()
传记,从本质上说,是人的生命活动的记载,是人类生命的一种特殊载体。人的生命活动,不仅表现出生存和发展的渴求,而且表现出自身潜能的开发、释放。这种自身潜能的开发、释放,就是一种力的创造。创造,包括多种形式,有政治家治国平天下的才能展现,有哲学家、思想家在精神
朱子读书法有哪些基本内容?
管理信息系统的综合结构中有一种是把同一管理层次上的若干相关职能综合起来形成的。这种结构叫______。
最新回复
(
0
)