在矩阵类中的一个内存问题,谢谢大家帮忙了

seaymx 2004-09-28 11:50:24
有关类定义如下:
class Matrix
{
private:
int m_nRows; /* the rows of matrix */
int m_nCols; /* the columns of matrix */
double **m_pData; /* matrix memory handle */
public:
/* constructor */
Matrix(int nRows,int nCols);
/* copy constructor */
Matrix(const Matrix &rhs);
/* destructor */
virtual ~Matrix();
private:
/* allocate memory */
void _newMemory();
/* deallocate memory */
void _deleteMemory();
};
void Matrix::_newMemory()
{
m_pData=new double*[m_nRows];
for(int i=0;i<m_nCols;i++)
{
m_pData[i]=new double[m_nCols];
}
}
void Matrix::_deleteMemory()
{
if(m_pData!=NULL)
{
for(int i=0;i<m_nRows;i++)
{
if(NULL!=m_pData[i])
{
delete []m_pData[i];
m_pData[i]=NULL;
}
}
delete []m_pData;
m_pData=NULL;
}
}
Matrix::Matrix(int nRows,int nCols)
:m_nRows(nRows),m_nCols(nCols),m_pData(NULL)
{
_newMemory();
}
/* destructor */
Matrix::~Matrix()
{
_deleteMemory();
}
运行上面的代码,总是提示在删除内存的时候出现错误。。
大家看看,这个究竟是什么问题!!!
...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kugou123 2004-09-28
  • 打赏
  • 举报
回复
晕~~我也来接分。。呵呵。
stevecrisewu 2004-09-28
  • 打赏
  • 举报
回复
接分,那就,呵呵
seaymx 2004-09-28
  • 打赏
  • 举报
回复
谢谢大家,我也刚发现!!!
也祝大家节日快乐
sutra 2004-09-28
  • 打赏
  • 举报
回复
测试不完全,所选用列数小于等于行数,没发现问题,惭愧之至!
同意楼上.
DentistryDoctor 2004-09-28
  • 打赏
  • 举报
回复
楼主笔误吧。^-^
sutra 2004-09-28
  • 打赏
  • 举报
回复
W2K+VC6测试通过,没有问题
无聊客 2004-09-28
  • 打赏
  • 举报
回复
void Matrix::_newMemory()
{
m_pData=new double*[m_nRows];
for(int i=0;i<m_nCols;i++) //应该是for(int i=0;i<m_nRows;i++)
{
m_pData[i]=new double[m_nCols];
}
}
快乐鹦鹉 2004-09-28
  • 打赏
  • 举报
回复
m_pData=new double*[m_nRows];
for(int i=0;i<m_nCols;i++)
{
m_pData[i]=new double[m_nCols];
}
这段好像错了,循环应该用m_nRows
m_pData=new double*[m_nRows];
for(int i=0;i<m_nRows;i++)
{
m_pData[i]=new double[m_nCols];
}

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧