2017-02-13 9 views
0

これでコンストラクタを持つ場合、Matrix(int、int);コンストラクタを使用してatribute値を与えるMatrix(int、int)

どのようにクラスの属性に値を与えることができますか?例えば:私はそれだけでマトリックスを書くことが容易である知っている

Matrix::Matrix(int, int) 
{ 
    columns= (and here what? If there is no reference I do not know what to assign it for) 

} 

は、(i、int型のjはint型)が、唯一の "INT" のは何がありますか?

+0

*このコンストラクタを持っている場合:Matrix(int、int)* - なぜあなたは物事をより困難にしようとしていますか? 'Matrix(int i、int j)'の何が間違っていますか? – PaulMcKenzie

+0

以下は、大部分のベルとホイッスルを持つ行列クラスの良い例です:https://isocpp.org/wiki/faq/operator-overloading#matrix-subscript-op – user4581301

答えて

1

この

Matrix(int, int); 

はちょうどコンストラクタ宣言です。パラメタの名前は、宣言で使用されていないため、指定する必要はありません。パラメータのタイプを指定するだけで十分です。

しかし、コンストラクタの定義では、パラメータの名前を指定する必要があります。たとえば、

Matrix::Matrix(int rows, int cols) 
{ 
    //... 
} 

これらのパラメータの名前は、たとえば、クラスのデータメンバーを初期化するために使用できます。

関連する問題