Matrix.op_Implicit Operator

Overload List

#SignatureDescription
1TDenseMtxVec op_Implicit(Matrix AValue)Dereferences internal TMtx objects and returns a pointer.
2TMtx op_Implicit(Matrix AValue)Dereferences internal TMtx objects and returns a pointer.
3TMtxVec op_Implicit(Matrix AValue)Dereferences internal TMtx objects and returns a pointer.
4TMtxVecBase op_Implicit(Matrix AValue)Dereferences internal TMtx objects and returns a pointer.
5TCplx} op_Implicit(Matrix a)Implicit conversion from Matrix to Span<TCplx>.
6TSCplx} op_Implicit(Matrix a)Implicit conversion from Matrix to Span<TSCplx>.
7Double} op_Implicit(Matrix a)Implicit conversion from Matrix to Span<Double>.
8Single} op_Implicit(Matrix a)Implicit conversion from Matrix to Span<Single>.
9Matrix op_Implicit(TCplx[] AValue)Implicit type conversion from an array of double to Matrix.
10Matrix op_Implicit(TCplx[][] AValue)Implicit type conversion from an array of double to Vector.
11Matrix op_Implicit(Double[] AValue)Implicit type conversion from an array of double to Matrix.
12Matrix op_Implicit(Double[][] AValue)Implicit type conversion from an array of double to Vector.

Overload 1: TDenseMtxVec op_Implicit(Matrix AValue)

Dereferences internal TMtx objects and returns a pointer.

#NameTypeDescription
1AValueMatrix

Result: stored in self (calling object), returns self for chaining

Overload 2: TMtx op_Implicit(Matrix AValue)

Dereferences internal TMtx objects and returns a pointer.

#NameTypeDescription
1AValueMatrix

Result: stored in self (calling object), returns self for chaining

Overload 3: TMtxVec op_Implicit(Matrix AValue)

Dereferences internal TMtx objects and returns a pointer.

#NameTypeDescription
1AValueMatrix

Result: stored in self (calling object), returns self for chaining

Overload 4: TMtxVecBase op_Implicit(Matrix AValue)

Dereferences internal TMtx objects and returns a pointer.

#NameTypeDescription
1AValueMatrix

Returns: TMtxVecBase

Overload 5: TCplx} op_Implicit(Matrix a)

Implicit conversion from Matrix to Span<TCplx>.

#NameTypeDescription
1aMatrix

Returns: TCplx}

Overload 6: TSCplx} op_Implicit(Matrix a)

Implicit conversion from Matrix to Span<TSCplx>.

#NameTypeDescription
1aMatrix

Returns: TSCplx}

Overload 7: Double} op_Implicit(Matrix a)

Implicit conversion from Matrix to Span<Double>.

#NameTypeDescription
1aMatrix

Returns: Double}

Overload 8: Single} op_Implicit(Matrix a)

Implicit conversion from Matrix to Span<Single>.

#NameTypeDescription
1aMatrix

Returns: Single}

Overload 9: Matrix op_Implicit(TCplx[] AValue)

Implicit type conversion from an array of double to Matrix.

#NameTypeDescription
1AValueTCplx[]

Result: stored in self (calling object), returns self for chaining

Remarks:

Copies array, but does not resize resulting matrix. Example of usage in Delphi XE7 and newer:

var a: Matrix;
begin
a.Size(2,2, mvDoubleComplex); a := [Cplx(1),Cplx(2),Cplx(3),Cplx(4)]; //same as a = [[Cplx(1),Cplx(2)],[Cplx(3),Cplx(4)]], but only if the size does not change end;

Overload 10: Matrix op_Implicit(TCplx[][] AValue)

Implicit type conversion from an array of double to Vector.

#NameTypeDescription
1AValueTCplx[][]

Result: stored in self (calling object), returns self for chaining

Remarks:

Copies array and resizes resulting matrix. Example of usage in Delphi XE7 and newer:

var a: Matrix;
arr: T2DCplxArray;
begin
am := [[Cplx(1,2)],[Cplx(3,4)]]; //Embedding means "row" concatenation arr := [[Cplx(1,2)],[Cplx(3,4)]]; am := arr;
am := [[Cplx(1,2)],[Cplx(3,4)]] + [[Cplx(1,2)],[Cplx(3,4)]]; //the "+" here is "row concatenation" // a := [[Cplx(1,2.2)],[Cplx(3,4)]] + a; //operator not applicable (it wont compile), ambiguous math or concat operation end;

Overload 11: Matrix op_Implicit(Double[] AValue)

Implicit type conversion from an array of double to Matrix.

#NameTypeDescription
1AValueDouble[]

Result: stored in self (calling object), returns self for chaining

Remarks:

Copies array, but does not resize resulting matrix. Example of usage in Delphi XE7 and newer:

var a: Matrix;
begin
a.Size(2,2);
a := [1,2,3,4]; //same as a = [[1,2],[3,4]] end;

Overload 12: Matrix op_Implicit(Double[][] AValue)

Implicit type conversion from an array of double to Vector.

#NameTypeDescription
1AValueDouble[][]

Result: stored in self (calling object), returns self for chaining

Remarks:

Copies array and resizes resulting matrix. Example of usage in Delphi XE7 and newer:

var a: Matrix;
arr: T2DDoubleArray; begin
am := [[1,2],[3,4]]; //Embedding means "row" concatenation arr := [[1,2],[3,4]]; am := arr;
am := [[1,2],[3,4]] + [[1,2],[3,4]]; //the "+" here is "row concatenation" // a := [[1,2.2],[3,4]] + a; //operator not applicable (it wont compile), ambiguous math or concat operation end;