刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

请阅读以下说明和C++代码,在代码中的空白处填写适当内容,使得程序能够正确运行。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

1.virtual void doPaint(Matrix m) = 0
2. imp->doPaint(m)
3. new GIFImage()
4. new LinuxImp()
5. image->setImp(imageImp)

解析:

根据题目描述和提供的类图,我们可以了解到这是一个采用桥接模式设计的图像预览程序。程序包括几个主要的类:Matrix(矩阵)表示图像的像素数据,Implementor(实现类)是抽象类,定义了显示像素矩阵的方法,WinImp和LinuxImp是Implementor的具体实现类,分别用于Windows和Linux系统。Image类及其派生类(如BMPImage、GIFImage、JPEGImage)负责解析图像文件并设置对应的实现类来显示图像。

根据这个结构,我们可以逐一解答题目中的填空:

  1. 在Implementor类中,显示像素矩阵的方法应声明为纯虚函数,因此第一个空应填写"virtual void doPaint(Matrix m) = 0"。
  2. 在GIFImage类的parseFile方法中,需要先通过setImp方法设置的实现类对象来显示像素矩阵,因此第二个空应填写"imp->doPaint(m)"。
  3. 在main函数中创建GIFImage对象来解析GIF图像文件,因此第三个空应填写"new GIFImage()"。
  4. 在main函数中创建LinuxImp对象来在Linux系统上显示图像,因此第四个空应填写"new LinuxImp()"。
  5. 在main函数中,通过调用Image对象的setImp方法来设置对应的实现类对象,因此最后一个空应填写"image->setImp(imageImp)"。
创作类型:
原创

本文链接:请阅读以下说明和C++代码,在代码中的空白处填写适当内容,使得程序能够正确运行。

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share