12345678910111213141516171819202122232425262728293031323334353637 |
- discard """
- file: "tarray2.nim"
- output: "[4, 5, 6]\n\n[16, 25, 36]\n\n[16, 25, 36]"
- """
- # simple check for one dimensional arrays
- type
- TMyArray = array[0..2, int]
- TObj = object
- arr: TMyarray
- proc mul(a, b: TMyarray): TMyArray =
- result = a
- for i in 0..len(a)-1:
- result[i] = a[i] * b[i]
- var
- x, y: TMyArray
- o: TObj
- proc varArr1(x: var TMyArray): var TMyArray = x
- proc varArr2(x: var TObj): var TMyArray = x.arr
- x = [ 4, 5, 6 ]
- echo repr(varArr1(x))
- y = x
- echo repr(mul(x, y))
- o.arr = mul(x, y)
- echo repr(varArr2(o))
- #OUT [16, 25, 36]
|