返回指针结构的成员:您好,
我想编写一个类,它返回一个指针数组中的任何数据:class CData
{
private:
struct
{
void* pVoid;
int iLen;
}data;
public:
void SetData (void* pVoid);
void* GetData (int iNum);
};
void CData::SetData (void* pVoid)
{
data.pVoid = pVoid;
data.iLen = iLen;
}
void* CData::GetData (int iNum)
{
return data.pVoid + iNum*iLen; //Simplified
}
与正常的数据阵列,这是没有问题的,但像这样的结构,我需要一些帮助:static MASTER master [3];
static CHILD child;
_tcscpy (child.szString, TEXT ("Child main"));
child.iInt = 12;
master[0].pChild = master[2].pChild = &child;
master[1].pChild = new CHILD;
master[1].pChild->iInt = 11;
_tcscpy (master[1].pChild->szString, TEXT ("Child 1"));
_tcscpy (master[0].szString, TEXT ("Master 0"));
_tcscpy (master[1].szString, TEXT ("Master 1"));
_tcscpy (master[2].szString, TEXT ("Master 2"));
master[0].iInt = 20;
master[1].iInt = 21;
master[2].iInt = 22;
选举从主结构的数据是没有问题的,但是从子结构返回的数据是一点点更复杂,因为结构不"结盟"在内存(?),,所以,我guesse我工作的指针与指针,但我不知道如何下手,所以任何想法?