public SquareMatrix(int length) { this.matrix = new T[length * length]; Length = length; mce = new MatrixChangeEvent(); mce.Change += SomeAction; }
public SymmetricMatrix(int length) { Length = length; int size = 0; for (int i = 1; i <= Length; ++i) { size += i; } this.matrix = new T[size]; mce = new MatrixChangeEvent(); mce.Change += SomeAction; }
public SymmetricMatrix(T[] matrix) { if (matrix == null) { throw new ArgumentNullException(); } if (!CheckMatrix(matrix.Length)) { throw new ArgumentException("This matrix is not symmetric."); } this.matrix = new T[matrix.Length]; Array.Copy(matrix, this.matrix, matrix.Length); mce = new MatrixChangeEvent(); mce.Change += SomeAction; }