首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
73
问题
阅读以下说明和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;
}
选项
答案
(4)&img或img→myObs[loop]
解析
逐个更新ImageView结构变量。
转载请注明原文地址:https://kaotiyun.com/show/PujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作的实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如下图所示。简述WLAN用户通过RADIUS服务器登录
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某实验室的网络拓扑结构如图3一1所示,内部网有4个部门,要求相互之间不能通过网上邻居访问,但可以通过IP地址互相访问,SW1为三层交换机。内部网全部使用私有IP地址。现
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某单位使用IIS建立了自己的FTP服务器,图2—1是IIS中“默认FTP站点属性”的配置界面。建立FTP服务器时,根据需求制定了如下策略:FTP站点允许匿
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
阅读以下关于Linux网卡安装和配置过程的说明,回答问题1~问题5,将解答填入答题纸对应的解答栏内。【说明】某个采用动态IP地址分配策略的计算机使用了最新的BCM5751网卡芯片,由于RedHatLinux9操作系统无法自动识别此
若用8位机器码表示十进制数-101,则原码表示的形式为(8);补码表示的形式为(9)。
通常计算机的存储器是一个由Cache、主存和辅存构成的3级存储系统。辅助存储器一般可由磁盘、磁带和光盘等存储设备组成。Cache和主存一般是一种(11)存储器。在各种辅存中,除了(12)外,大多是便于脱卸和携带的。Cache存储器一般采用(13)半导体芯片
由6个字符的7位ASCⅡ编码排列,再加上水平垂直奇偶校验位构成下列矩阵(最后一列为水平奇偶校验位,最后一行为垂直奇偶校验位)。字符: 3 0 X1 X2 0 0 1 1 0 I 1 0 0 1 0 0 X3 1 + X4 1 0 1
随机试题
下列凭证属于外来原始凭证的有()。
侵蚀性葡萄胎与绒毛膜癌最常见的转移部位绒毛膜癌最常见的死亡原因是
_______常见于慢性肝炎、肝硬化。
保障受试者权益的主要措施是
水泥混凝土应有按规范规定组数的试块强度试验资料和汇总表,包括()。
担任施工项目负责人的注册建造师,在所负责的工程项目竣工验收或交接手续办结前,不得变更注册到另一企业,除非该项目()。
根据《银行业消费者权益保护工作指引》,银行业金融机构应当在()醒目位置公布投诉方式和投诉流程。()
审计报告日不应早于()的日期。
某课程组研究了激素类似物甲和激素类似物乙。请回答下列问题。问题:已知甲为生长素类似物,图7为甲在X、Y、Z三种浓度下对微型月季茎段侧芽生长的影响,则X、Y、Z三种浓度中属于高浓度的是________浓度,Y、z浓度大小关系能否确定?____
如何理解戏剧是动作的艺术?
最新回复
(
0
)