首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

指针有关问题,答案,答者有分

2012-08-01 
指针问题,在线等答案,答者有分问题描述:VS2008 MFC大致代码:int** totol//全局变量BOOL CPlot::OnInitDia

指针问题,在线等答案,答者有分
问题描述:
VS2008 MFC
大致代码:
  int** totol; //全局变量
  BOOL CPlot::OnInitDialog() //初始化
  {
CDialog::OnInitDialog();
  .....................
  totol=new int*[heigh];
  for(i=0;i<heigh;i++)
{
totol[i]=new int[width];
}
for(i=0;i<heigh;i++)
for (j=0;j<width;j++)
{
totol[i][j]=0;
}

  void CPlot::OnPaint()
  {
CPaintDC dc(this);
  ..................
  //使用完了totol[][],现在想把它删除掉  
  }
//上面大致功能是,先定义一个totol二维数组,在OnInitDialog初始化,再用在OnPaint函数里面,主要的问题是:
  程序可以运行,但是当你关系绘图界面,在设置totol的大小时,就发生错误。。。。是不是要先释放totol 的内存,应该在哪里释放了?急。。。谢谢大家了!
 

[解决办法]
莫非是多线程?
内存不释放会造成内存泄露,只要还能申请到内存,程序就不会崩。


[解决办法]
代码不完整,不要让大家才猜你在那里出了问题?
没几个人愿意这么陪你玩。
[解决办法]
先执行删除:
for(i=0;i<heigh;i++)
{
delete []totol[i];
}
再删除
delete []totol;

[解决办法]
什么叫“但是当你关系绘图界面”?
[解决办法]
3楼正解
[解决办法]
其實問問題之前先把問題描述清楚點,這樣大家才能幫到你的~!~!~
[解决办法]
单步调试看看在哪步出错。。。
[解决办法]
三楼给出的数据释放正解,但楼主应当找到具体问题出在哪
[解决办法]
你在设置plotwidth和plotheight以后发生了地址越界,因为对totol的初始化放到了错误的事件函数中

热点排行