logo - 刷刷题
下载APP
【简答题】

阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。
[说明]
现欲实现一个图像浏览系统,要求该系统能够显示BMP、JPEG和GIF三种格式的文件,并且能够在Windows和Linux两种操作系统上运行。系统首先将BMP、JPEG和GIF三种格式的文件解析为像素矩阵,然后将像素矩阵显示在屏幕上。系统需具有较好的扩展性,以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子类数目,采用桥接(Bridge)设计模式进行设计所得类图如图18-17所示。

采用该设计模式的原因在于:系统解析BMP、GIF与JPEG文件的代码仅与文件格式相关,而在屏幕上显示像素矩阵的代码则仅与操作系统相关。
[C++代码]
clasS Matrix //各种格式的文件最终都被转换为像素矩阵
//此处代码省略

class ImageImp
public:
virtual void doPaint(Matrix m)=0; //显示像素矩阵m

class Winlmp:public ImageImp
public:
void doPaint(Matrix m)/*调用Windows系统的绘制函数绘制像素矩阵*/

class Linuxlmp:public Imagelmp
public:
void doPaint(Matrix m)/*调用Linux系统的绘制函数绘制像素矩阵*/

class Image
public:
void setImp(Imagelmp *imp) (1) =imp;
virtual void parseFiie(string fileName)=0;
protected:
(2) *imp;

class BMP:public Image
public:
void parseFile(string fileName)
//此处解析BMP文件并获得一个像素矩阵对象m
(3) ;//显示像素矩阵m


class GIF:public Image
//此处代码省略

class JPEG:public Image
//此处代码省略

void main()
//在Windows操作系统上查看demo.bmp图像文件
Image *imagel= (4)
ImageImp *imageImpl= (5)
(6)
imagel->parseFile("demo.bmp");

现假设该系统需要支持10种格式的图像文件和5种操作系统,不考虑类Matrix,若采用桥接设计模式则至少需要设计 (7) 个类。

(6)处填()。

阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。
[说明]
现欲实现一个图像浏览系统,要求该系统能够显示BMP、JPEG和GIF三种格式的文件,并且能够在Windows和Linux两种操作系统上运行。系统首先将BMP、JPEG和GIF三种格式的文件解析为像素矩阵,然后将像素矩阵显示在屏幕上。系统需具有较好的扩展性,以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子类数目,采用桥接(Bridge)设计模式进行设计所得类图如图18-17所示。

采用该设计模式的原因在于:系统解析BMP、GIF与JPEG文件的代码仅与文件格式相关,而在屏幕上显示像素矩阵的代码则仅与操作系统相关。
[C++代码]
clasS Matrix //各种格式的文件最终都被转换为像素矩阵
//此处代码省略

class ImageImp
public:
virtual void doPaint(Matrix m)=0; //显示像素矩阵m

class Winlmp:public ImageImp
public:
void doPaint(Matrix m)/*调用Windows系统的绘制函数绘制像素矩阵*/

class Linuxlmp:public Imagelmp
public:
void doPaint(Matrix m)/*调用Linux系统的绘制函数绘制像素矩阵*/

class Image
public:
void setImp(Imagelmp *imp) (1) =imp;
virtual void parseFiie(string fileName)=0;
protected:
(2) *imp;

class BMP:public Image
public:
void parseFile(string fileName)
//此处解析BMP文件并获得一个像素矩阵对象m
(3) ;//显示像素矩阵m


class GIF:public Image
//此处代码省略

class JPEG:public Image
//此处代码省略

void main()
//在Windows操作系统上查看demo.bmp图像文件
Image *imagel= (4)
ImageImp *imageImpl= (5)
(6)
imagel->parseFile("demo.bmp");

现假设该系统需要支持10种格式的图像文件和5种操作系统,不考虑类Matrix,若采用桥接设计模式则至少需要设计 (7) 个类。

举报
参考答案:
参考解析:
.
刷刷题刷刷变学霸
举一反三

【单选题】韩愈的《陆浑山火》一文,被后人称为难解,其主要原因在于()。

A.
意义丰富,可多角度理解而各执一词
B.
境界迷离,语词多义而难
C.
文字艰深,典故冷僻而难
D.
无从考据的历史语境

【单选题】飞机能起飞,原因在于飞机的?

A.
升力大于重力
B.
阻力大于重力
C.
升力小于重力
D.
升力等于重力

【单选题】在 Photoshop图像文件上的哪些位置可以添加文字注释和语音注释?()

A.
任何位置
B.
必须在有透明区域的位置
C.
必须在有像素的位置
D.
必须在有选区的位置

【多选题】社会主义发展道路多样性的原因在于()

A.
各国生产力发展状况差异性
B.
各国社会发展阶段的差异性
C.
各国历史文化传统的差异性
D.
各国生活习惯的差异性
E.
时代和实践的不断发展

【单选题】下列属于图形图像文件的是

A.
校车.htm
B.
校车.jpg
C.
校车.mpg
D.
校车.doc