码迷,mamicode.com
首页 > 编程语言 > 详细

离奇错误 数组访问越界

时间:2015-07-28 15:59:17      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

class OwnerImage

{

public:

  CSize GetImageSize();

private:

  POINT m_pt[2];

  int m_iImgWidth;

  int m_iImgHeight;

}

 

CSize OwnerImage::GetImageSize()

{

  return CSize(m_iImgWidth, m_iImgHeight);

}

其余函数省略了,在不断调用GetImageSize函数过程中,m_iImgWidth大小会发生变化,最初以为是CSize构造问题,后发现CSize继承于SIZE,此处正确。将m_pt[2]声明在最后,发现不会出现此问题,判定是POINT数组出现问题,另CPoint继承于POINT,后查找发现是由于在其他函数中使用m_pt[2],而数组无越界检查,故直接改变了m_iImgWidth值。以此为戒

离奇错误 数组访问越界

标签:

原文地址:http://www.cnblogs.com/92-05-29/p/4683030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!