工作中需要把一个数组作为参数传递出去,而且这个数组是个自定义结构的
typedef struct _MM_MYSYNC{
int nNum;
int nInNum;
string sFilePath;
HWND hWnd;
....
....
}MM_MYSYNC,*LPMM_MYSYNC;
typedef struct _MM_MYSYNC_ARRY{
CArray<MM_MYSYNC, MM_MYSYNC> arMM;
}MM_MYSYNC_ARRY,*LPMM_MYSYNC_ARRY;
--------------------------------------------
A.h中定义有
CArray<MM_MYSYNC, MM_MYSYNC> m_myAry;
A.cpp中有
fun()
{
...
m_myAry.Add(..);
...
m_myAry.Add(..);//共nCount次
...
B b;
b.SetValue(int nCount,(LPVOID)&m_myAry);
}
在类B.h中定义
Public:
SetValue(int nCount,void* pAry);
LPMM_MYSYNC_ARRY m_pA;
b.cpp
SetValue(int nCount,void* pAry)
{
m_pA = (LPMM_MYSYNC_ARRY)pAry;
MM_MYSYNC mySync = m_pA->arMM[0]
}
实现把A类中的结构数组m_myAry传递到B类中
传递成功,但感觉有点别扭,希望高手赐招!