0
我試圖從指針數組中提取值時遇到問題。 首先我把數據陣列中的是這樣的:來自CPtrArray的輸入和回溯信息MFC
RHExportType* rhet = new RHExportType;
for (int i = 0; i <= 9; i++)
{
CString* strTemp;
strTemp = CRHExportTypeCollection::GetTypesAndDescription(i); //retruns the first pointer to an CString array
rhet->type = i;
_tcscpy(rhet->extension, *strTemp);
++strTemp;
_tcscpy(rhet->description, *strTemp);
pArr.Add(rhet)
}
RHExportType是具有兩個字段爲char的結構[50]類型和一個int型。 pArr在函數CPtrArray & pArr中聲明爲out參數。
然後我訪問數據:
int sizeArr = m_RHExpType.m_ExpTypeArr.GetSize();
for(int i=0; i<12; i++)
{
RHExportType* pRHET = (RHExportType*)m_RHExpType.m_ExpTypeArr.GetAt(i);
strTemp.Format(_T("%s (.%s)"), pRHET->description, pRHET->extension);
}
但無論指數(I)的值,它總是返回最後插入值。 我加錯了數據?或者問題在於檢索數據?
這是問題,我是一個有點粗心。謝謝。 –