基于其字面提示,错误应该是成员函数应该是没有在类体中声明,而直接在类外定义造成的。
由此可能出现下面情况:
在编写类函数实现时出现的1)的情况
1)
类内的该成员函数的声明语句或者该成员函数的上一条语句没有加分号导致的。
Mat(char* ImageName) //构造函数重载,利用文件名从硬盘加载图像文件成为Mat对象;(没加分号)
Mat(T **m, int h, int w); //构造函数重载,从动态数组创建Mat对象;
template <typename T>
Mat<T>::Mat(T **m, int h, int w) //构造函数重载,从动态数组创建Mat对象;
<span style="color:#ff0000;">{ //此处提示:error:应输入声明</span>
height=h;
width=w;
data=new T *[height];
for(int i=0;i<height;i++)
{
data[i]=new T [width];
}
for(int i=0;i<n;i++)
{
for(int j=0;j<100;j++)
{
data[i][j]=m[i][j];
}
}
}
2)类定义的结尾(花括号后)没有写分号
版权声明:本文为wonengguwozai原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。