私は C++ を初めて使用し、最近目的指向プログラミングの研究を始めました。3 次元ベクトルと 3x3 行列を処理する独自の線形代数モジュールを書きたいと思っていました。行列を 3 つのベクトルからなるクラスとして定義しようとしました。
class vector {
public:
double n1, n2, n3;
vector (double a, double b, double c) {
n1 = a; n2 = b; n3 = c;
}
};
class matrix {
public:
vector m1, m2, m3;
matrix (vector a, vector b, vector c) {
m1 = a; m2 = b; m3 = c;
}
};
ただし、コンパイル エラーが発生します。
In constructor `matrix::matrix(vector, vector, vector)':
no matching function for call to `vector::vector()'
プログラムは、定義したベクトルクラスを使用して行列を構築する方法を知らないと推測しています。しかし、私はその理由を理解していません。誰かが説明できれば、私はとても感謝しています。