我注意到可以定義一個自定義的類,然後在其中的一些運算符上使用+, - ,/和*,而不是使用方法來實現。例如,我創建了一個矩陣的類,它複雜的矩陣代數/分化,創造它,這樣所有的操作都通過以下方法來控制:如何在數學對象等表達式中使用自定義類?
Matrix m1 = new Matrix(new double[][] { /* Some data */ });
Matrix m2 = new Matrix(new double[][] { /* Some other data */ });
// Returns a new Matrix object equal to the result
m1 = m1.Multiply(m2);
m1 = m1.Add(m2.Inverse);
m1 = m1.Subtract(m2.Determinant);
m1 = m1.ApplyToCombinator(new AlgebraMatrix(new string[][] { /* Some data *. }));
然而,看着This CodeProject Page後,並使用XNA框架後(Position = Speed * (float)gameTime.ElapsedTime.TotalSeconds;
其中一個Vector2
對象正在使用*
乘以float
),您可以使用+, - ,/和*代替。
那麼,我將如何改變我的課,所以我可以簡單地鍵入下面的代碼來做同樣的上述?
m1 = m1 * m2 + m2.Inverse - m2.Determinant;
在此先感謝。
謝謝,我不知道它叫什麼! – 2009-07-19 13:33:10