VC 函数返回值的类型是“类”怎么理解

来源:百度知道 编辑:UC知道 时间:2024/06/03 12:46:04
有如下语句:
CSize ImgCenterDib::GetDimentions()
{
if(m_lpDib==NULL) return CSize(0,0);
return CSize(m_imgWidth,m_imgHeight);
ImgGenterDib是一个类,这个类的函数GetDimentions()的作用是
返回图像的宽和高。CSize是一个类
该怎么理解呢?
谢谢了
}

如果理解的话,你把它们当成和int、char一样的东西就可以了。
准确地说是返回一个类的对象,而不是一个类。
里面的可能会有些操作,在赋值的时候,这要看这个类是否重载了“=”,如果没有的话,就是简单的一对一的成员赋值,否则就看你是怎么重载的了。
返回一个对象,一般不会有问题,返回引用和地址的时候要检查引用的对象和地址的指向是否合法。

类也是一种类型啊,当然可以作为返回类型了.这里就是生成一个临时的CSize对象,把这个临时对象作为返回值给return了.和int,float原理是一样的

就是返回一个CSize这种类型的一个实例啊,返回一个类的实例跟返回int、double型是一样的,要是真难理解的话就想象一下,一个函数要返回一个字符串怎么写?CString ImgCenterDib::GetDimentions();这里的CString不也是一个类么?