これは私の現在のクラス割り当てに関する質問です。私は自分のコードで1つのコンストラクタだけを使う必要があり、どうやってそれを行うのかは分かりません。デフォルトのコンストラクタの使用を避けるにはどうすればよいですか?
class test {
public:
test(int x, int y, int z);
(...)
private:
int x,y,z;
}
test::test(int x = 0, int y = 0, int z = 0){
this -> x = x;
this -> y = y;
this -> z = z;
}
int main(){
test test1, test2(1,2,3)
(...)
}
現在、私はtest1に一致する関数呼び出しを持っていないと言っているので、コンパイルされません。私は、int x = 0をパラメータとして使用するとデフォルトのものを設定することを確信していました...
あなたは二度 'test1'を持っています。また、デフォルトのパラメータ値は定義ではなく、宣言内にある必要があります。 – krzaq