A pointer from type T points to an object from type T (T = basic or user-defined datatype)
A pointer holds the address of the object that is pointing to
The fundamental operation with a pointer is called "dereferencing". The dereferencing in CODESYS is done with the symbol "^"
A pointer can point to a different object at a different time
Before dereferencing a pointer and assigning a value to it, you should always check if a pointer points to an object. (pointer = 0)?
A reference from type T "points" to an object from type T (T = basic or user-defined datatype)
A reference must be initialized with an object and its "pointing" to this object through the program
A reference must not be dereferenced as a pointer and it can be used with the same syntax as the object
Another word for reference is "Alias" (another name) a pseudonym for the object
The reference doesn't have its own address and a pointer does. The address of the reference is the same as the "pointed" object.
There is no 0 reference, so you should never call the reference if it's not initialized
You should check if you have a valid reference with the CODESYS integrated keyword "__ISVALIDREF"
The best use of pointers and references is when you want to pass or return an object of some type to a function or function block by "reference" because the object is either too big or you want to manipulate the passed object within the function/function block. Make sure that, the reader of your code knows that you're going to change the value of the object within the function/function block if this is what you intend to do when you pass it as an argument.
Auf dieser Seite können Sie das Online-Video CODESYS - Difference between pointer and reference mit der Dauer stunde minuten sekunde in guter Qualität ansehen, das der Benutzer AT&U 28 Februar 2021 hochgeladen hat, den Link mit Freunden und Bekannten teilen, dieses Video wurde auf Youtube bereits 8,187 Mal angesehen und es wurde von 84 den Zuschauern gefallen. Viel Spaß beim Betrachtenden Zuschauern gefallen!