DataBase.cpp
上传用户:hehe2haha
上传日期:2013-08-16
资源大小:161k
文件大小:1k
源码类别:

CAD

开发平台:

Visual C++

  1. // DataBase.cpp: implementation of the CDataBase class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "DataBase.h"
  6. #include "Line.h"
  7. #include "Rectangle.h"
  8. #include "Circle.h"
  9. //////////////////////////////////////////////////////////////////////
  10. // Construction/Destruction
  11. //////////////////////////////////////////////////////////////////////
  12. CDataBase::CDataBase()
  13. {
  14. }
  15. CDataBase::~CDataBase()
  16. {
  17. }
  18. CShape * CDataBase::OpenObject(ifstream &ifs)
  19. {
  20. char className[255];
  21. CShape *pShape = NULL;
  22. //读取类名
  23. ifs>>className;
  24. //识别类名
  25. if (strcmp(className,"CLine") == 0)
  26. {
  27. pShape = new CLine;
  28. }
  29. if(strcmp(className,"CCircle") == 0)
  30. {
  31. pShape = new CCircle;
  32. }
  33. if(strcmp(className,"CRectangle") == 0)
  34. {
  35. pShape = new CRectangle;
  36. }
  37. //文件无内容
  38. if (pShape == NULL) return pShape;
  39. pShape->Open(ifs);
  40. return pShape;
  41. }
  42. void CDataBase::SaveObject(ofstream &ofs,CShape* pShape)
  43. {
  44. pShape->SaveClassName(ofs);
  45. pShape->Save(ofs);
  46. }