User Tools

Site Tools


delegates

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
delegates [2018/02/20 19:40] wolfgangriedmanndelegates [2018/07/11 09:35] – [Why Delegates] wolfgangriedmann
Line 9: Line 9:
 The only real use of function pointers in the VO language is the interface to Windows API functions or other DLL calls.  The only real use of function pointers in the VO language is the interface to Windows API functions or other DLL calls. 
  
-Since every pointer use can lead to serious problems when wrongly used, the .NET languages define another concept: the delegates.+Since every pointer use can lead to serious problems when wrongly used, the .NET languages define another concept: the delegates. And therefore you should also use delegates when you need to dynamically call functions.
  
 ==== What is a Delegate ==== ==== What is a Delegate ====
Line 41: Line 41:
 Of course you can omit also the Invoke() call - the compiler will add it for you: Of course you can omit also the Invoke() call - the compiler will add it for you:
 <code>oDelegate( 789 )</code> <code>oDelegate( 789 )</code>
 +
 +Delegates can be also used in other cases: when you need to call a function in a dynamically loaded DLL. In VO we used the PCall() pseudo-function, in Vulcan also PCallNative().
 +For a sample please look here:  [[vo_to_net:pcall|PCall vs PCallNative]]
  
 Please look also at this message in the X# forum by Chris Pyrgas: Please look also at this message in the X# forum by Chris Pyrgas:
delegates.txt · Last modified: 2018/07/11 09:36 by wolfgangriedmann