0
こんにちは私のプログラムでは2つのコンストラクタがあります。C++定義されていない参照
BinaryImage();
BinaryImage(int MM, int NN, double* input_data, double thresh);
私のメインでは、
BinaryImage BinaryImageObj();
これはうまくコンパイルされますが、2番目のconstrutorを呼び出すとコンパイルされます。
BinaryImage BinaryImageObj2(MM,NN,data,1);
これはエラーです。
main.cppに||(、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 ;
}
二値クラス(マトリックスから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);
}
}
}
メイン
0123を作成し、whats going onを表示するように編集しました。
二値である::二値(MM int型は、NN、ダブル* INPUT_DATA、二重のスレッシュをint型):マトリックス(MM、NNは、INPUT_DATA)これは私の二値クラス内でそれがすることでしたマトリックスクラスがオブジェクトを作成したという私の信念、私はiveが完全に何かを逃したと思う:( – nullVoid
@nullVoidなぜ質問を編集して全体のコードを投稿しないのですか? –