0
嗨,在我的程序中我有两个构造函数;C++ undefined reference
BinaryImage();
BinaryImage(int MM, int NN, double* input_data, double thresh);
在我的主要;
BinaryImage BinaryImageObj();
这编译得很好,但是当我调用第二个construtor;
BinaryImage BinaryImageObj2(MM,NN,data,1);
然而这会带来一个错误;
的main.cpp ||未定义参考`BinaryImage :: BinaryImage(INT,INT,双*双)”
它为什么要这样做?我失去了一些东西简单?
由于
麦克
该矩阵类构造函数创建对象
Matrix::Matrix(int MM, int NN, double* input_data){
M = MM;
N = NN;
data = new double[M * N];
for (int i =0; i < M; i++)
{
for (int j = 0; j < N; j++)
{
data[i* N+j] = input_data[i*N+j];
// cout << data[i*N+j] <<"\t";
}
// cout <<"\n";
}
cout << "This is the Matrix Constructor being invoked" << endl ;
}
binaryimage类(从矩阵inherts)
BinaryImage::BinaryImage(int MM, int NN, double* input_data, double thresh):Matrix(MM, NN, input_data)
{
M = MM;
N = NN;
data = new double[M * N];
for (int i =0; i < M; i++)
{
for (int j = 0; j < N; j++)
{
treshData(tresh);
}
}
}
主要
Matrix MatrixObj1(MM,NN,data2);
BinaryImage BinaryImageObj;
编辑显示发生了什么事。
BinaryImage :: BinaryImage(INT MM,INT NN,双* input_data,双THRESH):矩阵(MM,NN,input_data)这是我的binaryimage类中它是我相信矩阵类创建的对象,我认为完全错过了一些东西:( – nullVoid 2012-04-25 11:02:44
@nullVoid为什么不编辑问题并发布整个代码? – 2012-04-25 11:05:18