阅读以下关于某绘图系统的技术说明、部分UML类图及C++程序,将C++(1)~(6)空缺处的语句填写完整。 【说明】 某绘图系统存在Point、Line和Square这三种图元,它们具有Shape接口,图元的类图关系如图5-10所示。 现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供了的接口不被系统直接使用。【C++代码5-1】既使用了XCircle又遵循了Shape规定的接口,即避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。【C++代码5-2】根据用户指定的参数生成特定的图元实例,并对它进行显示操作。 该绘图系统定义的接口与XCircle提供的显示接口及其功能如表5-13所示。 【C++代码5-1】 class Circle: public (1) { Private; (2) m_circle; Public; void display(){ m_circle. (3) } }; 【C++代码5-2】 class Factory{ public; (4) getShapeInstance(int type){ //生成特定类实例 Switch(type){ case 0: return new Point; case 1: return new Rectangle; case 2: return new Line; case 3: return new Circle; default: return NULL; } } }; void main(int argc, char *argv[]){ if(argc !=2){ cout<<'error parameters!'<<endl; return; } int type=atoi(argv[1]); Factory factory; Shape *s; s=factory.(5); if(s==NULL){ cout<<'Error get the instance!'<<endl; return; } s->display(); (6); Return; }