+ -
当前位置:首页 → 问答吧 → 类、对象小问题

类、对象小问题

时间:2011-12-07

来源:互联网

[code=C/C++][/code]
   
  CDib CDib; //CDib 是一个类
  LvBoQuZao CDibNew; //LvBoQuZao 也是一个类
  .......
  CDib* CDib1;
  LvBoQuZao* CDibNew1; //*CDib和*CDibNew1是什么?类的指针么?
  ........
  CDibNew1=&pDoc->CDibNew; //
  CDib1=&pDoc->CDib; //这两行代码是在做什么?为什么这么做?
  long int size=CDib1->GetHeight()*CDib1->GetDibWidthBytes();
  memcpy(CDibNew1->m_pData,CDib1->m_pData,size);

  感谢大家!

作者: greatliudy123   发布时间: 2011-12-07

第一个是指针
第二个使用对象初始化指针

作者: hnuqinhuan   发布时间: 2011-12-07

[code=C/C++][/code]
CTESTDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CDibNew1=&pDoc->CDibNew; //
CDib1=&pDoc->CDib; //这两行代码是在做什么?为什么这么做?
long int size=CDib1->GetHeight()*CDib1->GetDibWidthBytes();
memcpy(CDibNew1->m_pData,CDib1->m_pData,size);
少了两句代码,补上

作者: greatliudy123   发布时间: 2011-12-07

引用 1 楼 hnuqinhuan 的回复:
第一个是指针
第二个使用对象初始化指针

[code=C/C++][/code]

CTESTDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CDibNew1=&pDoc->CDibNew; //
CDib1=&pDoc->CDib; //这两行代码是在做什么?为什么这么做?

*pDoc也是指针吧?CDibNew1=&pDoc->CDibNew; 为啥是&pDoc->CDibNew?

作者: greatliudy123   发布时间: 2011-12-07

就是类指针, 那两行是对其进行初始化

作者: focuslight   发布时间: 2011-12-07

引用 4 楼 focuslight 的回复:
就是类指针, 那两行是对其进行初始化

初始化之后,指针指向的是什么?数据区首地址?

作者: greatliudy123   发布时间: 2011-12-07

指向类对象在内存中地址

作者: focuslight   发布时间: 2011-12-07