User Tools

Site Tools


vba:functions:ref

Differences

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

Link to this comparison view

Next revision
Previous revision
vba:functions:ref [19.10.2015 17:06:35]
yaslaw created
vba:functions:ref [21.12.2015 10:37:16] (current)
yaslaw
Line 1: Line 1:
 <​const>​ <​const>​
     version=1.1.0     version=1.1.0
-    vdate=+    vdate=19.10.2015
     fname=udf_ref.bas     fname=udf_ref.bas
     ns=%NAMESPACE%     ns=%NAMESPACE%
Line 7: Line 7:
 </​const>​ </​const>​
 ====== [VBA] ref() ====== ====== [VBA] ref() ======
-//Es gibt anwendugsfälle bei denen man nicht weissob, ob die Übergabevariable ein Objekt oder eine einfach ​Vriable ​ist. ref() handelt im Gegensatz zu = das selber.//+//Es gibt anwendugsfälle bei denen man nicht weissob, ob die Übergabevariable ein Objekt oder eine einfach ​Variable ​ist. ref() handelt im Gegensatz zu = das selber.//
  
 ==Version %%version%%%%== ==Version %%version%%%%==
Line 14: Line 14:
  
 ===== Beschreibung =====  ===== Beschreibung ===== 
 +Die Funktion ref() verwedne ich häufig in grösseren Funktionen/​Klassen,​ bei denen die Methoden flexibel sind. Zum Beispiel bei [[vba:​functions:​print_r:​index]] und bei [[vba:​classes:​iterator:​index]]
  
 ===== Beispiele ===== ===== Beispiele =====
 +Das Beispiel so macht wenig Sinn. Es zeigt nur wie die Funktion angewendet wird
 +
 +Eine Methoden in einer Klasse, die eine Variable entgegen nehmen
 +<code vb function.bas>​Private myItem As Variant
 +
 +'Wie wissen hier nicht, ob ein Objekt oder ein anderer Datentyp daherkommt
 +Public Sub setItem(ByRef iItem As Variant)
 +    ref myItem, iItem
 +End Sub
 +
 +Public Property Get tName() As String
 +    tName = TypeName(myItem)
 +End Property
 +</​code>​
 +
 +Test
 +<code vb>Dim fso As New FileSystemObject
 +Dim cl As new MyClass
  
 +cl.setItem fso
 +debug.print cl.tName</​code>​
  
 ===== Code ===== ===== Code =====
 <source '​%%fpath%%/​%%fname%%'​ vb> <source '​%%fpath%%/​%%fname%%'​ vb>
vba/functions/ref.1445267195.txt.gz · Last modified: 19.10.2015 17:06:35 by yaslaw