定义这样一个类typedef CArray<int,int&> CMYInt;
用for (int i=0;i<10;i++)
{
m_intList.Add(i);
}
负值,
再通过函数
GetEValue(CMYInt *pInt)
{
         for (int i=0;i<pInt->GetSize();i++)
{

}
}读取,但是的值不正确
请问这是问什么呀??
在函数中该怎么传递数组??

解决方案 »

  1.   

    w  我这样试了一下 没问题呀#include "afxtempl.h" 
    #include "stdio.h"typedef CArray<int,int&> CMYInt;void GetEValue(CMYInt *pInt)
    {
    for (int i=0;i<pInt->GetSize();i++)
    {
    printf ("%d\n", (*pInt)[i] ) ;
    }
    }main()
    {
    CMYInt m_intList ;
    for (int i=0;i<10;i++)
    {
    m_intList.Add(i);
    }
    GetEValue (&m_intList) ;
    }
      

  2.   

    #include "afxtempl.h"
    //...
    typedef CArray<int,int&> CMYInt;GetEValue(CMYInt *pInt)
    {
    for (int i=0;i<pInt->GetSize();i++)
    {
    int x = pInt->GetAt(i);
    }
    }void CDlgcsdn20Dlg::OnButton12() 
    {
    CMYInt m_intList;
    for (int i=0;i<10;i++)
    {
    m_intList.Add(i);
    }
    GetEValue(&m_intList);
    }
    没问题