读书人

RECEIVEDATA *pData = new RECEIVEDAT

发布时间: 2012-02-12 17:16:34 作者: rapoo

RECEIVEDATA *pData = new RECEIVEDATA, *pdata;这句是什么意思?最后要delete哪个?
RECEIVEDATA *pData = new RECEIVEDATA, *pdata;这句是什么意思?最后要delete哪个?

[解决办法]
指针啊,delete pData;
[解决办法]
是在内存中开辟一个堆栈,堆栈大小为RECEIVEDATA大小,
RECEIVEDATA *pData = new RECEIVEDATA
pData->xxx();
delete pData;
---------------------------
动态分配内存,可以在程序运行的时候来决定如何分配,这样可以大大减少内存的浪费。

[解决办法]
p是指针
*p 是指针类型
[解决办法]
pdata是指针
*pdata是指针所指向的对象,*放在指针前面就是解引用,取得指针所指的对象
[解决办法]

探讨
那后面的*pdata是什么?为什么*pdata要加*呢?

[解决办法]
书写习惯造成难理解,下面这样分开来写应该好理解
RECEIVEDATA *pData = new RECEIVEDATA;//定义指针pData,并且初始化了
RECEIVEDATA *pdata;//一个未初始化的指针pdata

读书人网 >C++

热点推荐