5
我有一個自定義的Matrix
類,我想實現一個類似於double [,]可以使用的自定義對象初始值設定項,但似乎無法弄清楚如何執行它。如何爲Matrix類實現乾淨的自定義對象初始值設定項
理想我想有它看起來像這樣
var m1 = new Matrix
{
{ 1.0, 3.0, 5.0 },
{ 7.0, 1.0, 5.0 }
};
截至目前我有一個普通構造器接受這樣的
var m1 = new Matrix(new double[,]
{
{ 1.0, 3.0, 5.0 },
{ 7.0, 1.0, 5.0 }
});
呼叫
public Matrix(double[,] inputArray){...}
簽名
和一個對象初始化程序,它通過繼承IEnumerable<double[]>
接口和實施公共無效Add(double[] doubleVector)
方法
var m2 = new Matrix
{
new [] { 1.0, 3.0, 5.0 },
new [] { 7.0, 1.0, 5.0 }
};
,當我嘗試使用對象初始化器,我想我得到不具有Add
過載,它利用參數X個,其中X是多少的編譯器錯誤我試圖創建的列(即在我提供的例子3)中。
我該如何設置我的課程才能像我提供的參數?
學到了今天。謝謝您的幫助! – PlTaylor
這個類是不是需要實現IEnumerable才能使用這個? –
但矩陣應該有相等的長度和寬度 –