void Mat<T>::Read(char *ImageName) //从硬盘文件中读入图像数据;
{
IplImage *img =cvLoadImage( ImageName , 0);
T *img_data = (T *)(img->imageData);
int width_step=img->widthStep;
width=img->width;
height=img->height;
data=new T *[height];
for(int i=0;i<height;i++)
{
for(int j=0;j<width;j++)
{
data[i][j]=img_data[width_step*i+j]; //此处报错,访问越界
}
}
cvReleaseImage( &img );
}
上边是模版类中的成员函数(模板函数)的实现,在实例化时我将 类型T 实例化成为double类型于是在 上面i=266 j=467 时访问越界,