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.
На этой странице сайта вы можете посмотреть видео онлайн CODESYS - Difference between pointer and reference длительностью часов минут секунд в хорошем качестве, которое загрузил пользователь AT&U 28 Февраль 2021, поделитесь ссылкой с друзьями и знакомыми, на youtube это видео уже посмотрели 8,187 раз и оно понравилось 84 зрителям. Приятного просмотра!