閱讀下列說明和c++代碼,將應填入(n)處的字句寫在答題紙的對應欄內。
【說明】
某圖像預覽程序要求能夠查看bmp,jpeg和gif三種格式的文件,且能夠在windows和linux兩種操作系統上運行。程序需具有較好的擴展性以支持新的文件格式和操作系統。為滿足上述需求并減少所需生成的子類數目,現采用橋接 (bridge)模式進行設計,得到如圖5.1所示的類圖。
【c++代碼】
#include
#include
using namespace std;
class matrix{//各種格式的文件最終都被轉化為像素矩陣
//此處代碼省略
};
class implement{
public:
(1) ;//顯示像素矩陣m
};
class winimp:public implementor{
public:
void dopaint(matrix m){/*調用windows系統的繪制函數繪制像素矩陣*/}
};
class linuximp: public implementor{
public:
void dopaint(matrix m){/*調用linux系統的繪制函數繪制像素矩陣*/}
};
class imag{
public:
void setimp(implementor *imp){this.imp=imp;}
virtual void parsefile(string filename)=0;
protected:
implenentor *imp;
};
class bmpimage:public image{
//此處代碼省略
};
class gifimage:public image{
public:
void parsefile(string filename){
//此處解析gif文件并獲取一個像素矩陣對象m
(2) ;//顯示像素矩陣m
}
};
class jpegimage:public image{
//此處代碼省略
};
int main(){
public static void main(string[] args){
//在linux操作系統上查看demo.gif圖像文件
imag imag= (3) ;
implementor imageimp= (4) ;
(5) ;
image.parsefile(“demo.gif”);
}
}
信管網參考答案:
(1)virtual void dopaint(matrix m)=0;
(2)imp->dopaint(m)
(3)new gifimage()
(4)new linuximp()
(5)imp->setimp(imageimp)
溫馨提示:因考試政策、內容不斷變化與調整,信管網網站提供的以上信息僅供參考,如有異議,請以權威部門公布的內容為準!
信管網致力于為廣大信管從業(yè)人員、愛好者、大學生提供專業(yè)、高質量的課程和服務,解決其考試證書、技能提升和就業(yè)的需求。
信管網軟考課程由信管網依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學員考試保駕護航。面授、直播&錄播,多種班型靈活學習,滿足不同學員考證需求,降低課程學習難度,使學習效果事半功倍。
發(fā)表評論 查看完整評論 | |