afx.inl line:177如何解决
afx.inl line:177怎么解决
_AFX_INLINE TCHAR CString::operator[](int nIndex) const
{
ASSERT(nIndex >= 0);
ASSERT(nIndex < GetData()->nDataLength); //line:177
return m_pchData[nIndex];
}
应该是CString的[]出问题,但我不知道具体是那一行
CStringArray Go_Temperature_Area_Link;
Go_Temperature_Area_Link.SetSize(4*N);
CString T1_str1,T1_str2;
T1_str1=GetAddressCode5(); //GetAddressCode5()返回CString
T1_str2=GetAddressCode6()+G1_Parameter()+H_Parameter1();
Go_Temperature_Area_Link.SetAt(0, T1_str1);//感觉是这一行
把CString赋给CStringArray不对吗?
------解决方案--------------------
ASSERT(nIndex < GetData()->nDataLength)
这个说明你数组越界了。
operator[]
这个[]重载错误
楼主,你如果用VC的话请用CallStack功能,就能查到是哪里越界了。
_AFX_INLINE TCHAR CString::operator[](int nIndex) const
{
ASSERT(nIndex >= 0);
ASSERT(nIndex < GetData()->nDataLength); //line:177
return m_pchData[nIndex];
}
应该是CString的[]出问题,但我不知道具体是那一行
CStringArray Go_Temperature_Area_Link;
Go_Temperature_Area_Link.SetSize(4*N);
CString T1_str1,T1_str2;
T1_str1=GetAddressCode5(); //GetAddressCode5()返回CString
T1_str2=GetAddressCode6()+G1_Parameter()+H_Parameter1();
Go_Temperature_Area_Link.SetAt(0, T1_str1);//感觉是这一行
把CString赋给CStringArray不对吗?
------解决方案--------------------
ASSERT(nIndex < GetData()->nDataLength)
这个说明你数组越界了。
operator[]
这个[]重载错误
楼主,你如果用VC的话请用CallStack功能,就能查到是哪里越界了。