首页上一页 1 下一页尾页 1 条记录 1/1页
Debug Assertion failed!的错误
发表在C语言图书答疑
2015-01-19
是否精华
是
否
版块置顶:
是
否
CStringList* CListCtrlPop::SelectStringList(int number, CStringList *newstringlist)
{
if(number<0)
{
MessageBox("stringlists.number<0");
return NULL;
}
ASSERT(newstringlist!=NULL);
CStringList* temp=m_strlist;
m_iColumns=number;
this->m_strlist=newstringlist;
this->ClearListAllColumn(); //将上次显示的数据删除;
int length=0; //记录总长度
CString str;
int* col_length=new int[m_iColumns]; //记录每列最长的长度
for(int k=0;k<m_iColumns;k++)
col_length[k]=8;
for(int i=0;i<m_iColumns;i++)
{
this->m_listctrl->InsertColumn(i,m_strlist[i].GetHead());
col_length[i]=max(col_length[i],m_strlist[i].GetHead().GetLength());
POSITION pos=m_strlist[i].FindIndex(1);
for(int j=1;pos!=NULL;j++)
{
str=m_strlist[i].GetNext(pos);
col_length[i]=max(col_length[i],str.GetLength());
}
m_listctrl->SetColumnWidth(i,col_length[i]*10);//LVSCW_AUTOSIZE_USEHEADER
}
for(k=0;k<m_iColumns;k++)
length=length+col_length[k];
m_listctrl->MoveWindow(0,0,length*10+18,this->m_rectShow.Height()-7);
m_rectShow.right=length*10+26;
delete [] col_length;
return temp;
}
this->m_listctrl->InsertColumn(i,m_strlist[i].GetHead());
问三个问题,麻烦帮解决一下,谢谢
1、自身类成员m_listctrl下属InsertColumn,它的参数是什么,作用是什么, InsertColumn本身有没有问题,是传入参数?传入参数在哪,是否输出参数
2、i或者m_strlist[i].GetHead()的初始化是什么,使用中有没有返回值。或正常使用没找到
3、CListCtrl* m_listctrl;//这是一个指针,有实例化过在哪里?
GetHead();在没有被二次封装过的?
{
if(number<0)
{
MessageBox("stringlists.number<0");
return NULL;
}
ASSERT(newstringlist!=NULL);
CStringList* temp=m_strlist;
m_iColumns=number;
this->m_strlist=newstringlist;
this->ClearListAllColumn(); //将上次显示的数据删除;
int length=0; //记录总长度
CString str;
int* col_length=new int[m_iColumns]; //记录每列最长的长度
for(int k=0;k<m_iColumns;k++)
col_length[k]=8;
for(int i=0;i<m_iColumns;i++)
{
this->m_listctrl->InsertColumn(i,m_strlist[i].GetHead());
col_length[i]=max(col_length[i],m_strlist[i].GetHead().GetLength());
POSITION pos=m_strlist[i].FindIndex(1);
for(int j=1;pos!=NULL;j++)
{
str=m_strlist[i].GetNext(pos);
col_length[i]=max(col_length[i],str.GetLength());
}
m_listctrl->SetColumnWidth(i,col_length[i]*10);//LVSCW_AUTOSIZE_USEHEADER
}
for(k=0;k<m_iColumns;k++)
length=length+col_length[k];
m_listctrl->MoveWindow(0,0,length*10+18,this->m_rectShow.Height()-7);
m_rectShow.right=length*10+26;
delete [] col_length;
return temp;
}
this->m_listctrl->InsertColumn(i,m_strlist[i].GetHead());
问三个问题,麻烦帮解决一下,谢谢
1、自身类成员m_listctrl下属InsertColumn,它的参数是什么,作用是什么, InsertColumn本身有没有问题,是传入参数?传入参数在哪,是否输出参数
2、i或者m_strlist[i].GetHead()的初始化是什么,使用中有没有返回值。或正常使用没找到
3、CListCtrl* m_listctrl;//这是一个指针,有实例化过在哪里?
GetHead();在没有被二次封装过的?