Pointers and references: Difference between revisions
Content added Content deleted
(Fixed template. (doh!)) |
No edit summary |
||
Line 57: | Line 57: | ||
Accessing another object of the array through the reference: |
Accessing another object of the array through the reference: |
||
v = (&ref)[3]; // read value of array[3]; however doing this is bad style |
v = (&ref)[3]; // read value of array[3]; however doing this is bad style |
||
==[[Tcl]]== |
|||
Tcl does not have pointers, however if required a similar level of indirection can be had by storing a variable name in another variable, eg. |
|||
set var 3 |
|||
set pointer var; # assign name "var" not value 3 |
|||
set pointer; # returns "var" |
|||
set $pointer; # returns 3 |
|||
set $pointer 42; # variable var now has value 42 |
|||
In practice it's safer and more convenient to use array keys, eg. |
|||
set arr(var) 3 |
|||
set pointer var |
|||
set arr($pointer); # returns 3 |
|||
set arr($pointer) 42; # arr(var) now has value 42 |