LabVIEWForum.de
Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Lokale Variablen -> Referenzen nach Erstellung eines SubVIs (/Thread-Lokale-Variablen-Referenzen-nach-Erstellung-eines-SubVIs)

Seiten: 1 2


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - NafeZ - 28.08.2009 11:32

Hi,

ich hab mal ne grundlegende Frage zu SubVIs. Immer wenn ich ein VI erstellt habe, welches lokale Variablen beinhaltet, und ich daraus ein SubVI erstelle, dann kreiert LV automatisch Property Nodes mit dazugehörigen Referenzen zu den lok. Variablen. Warum ist das so und wie kann ich das unterbinden?

Danke im voraus.

Gruß, NafeZ


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - Y-P - 28.08.2009 12:00

Das kannst Du gar nicht unterbinden. Wenn Du lokale Variablen in einem SubVI hast, dann beziehen die sich immer auf ein Frontpanelement des MainVI's, es sei denn das entsprechende Control liegt ebenfalls in dem SubVI.
Durch die Property-Nodes werden die Referenzen an das SubVI übergeben.

Gruß Markus

EDIT: Hier ist noch ein Bsp.:
[attachment=20877]
[attachment=20876]
[attachment=20878]

Alle VIs fürLv80_img


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - NafeZ - 28.08.2009 13:13

Wenn ich die Refernzen im SubVI dann aber lösche funktionierts doch trotzdem. Ich muss dann aber keine Referenzen mehr übergeben. Enstehen durch das Löschen der Referenzen irgendwelche Nachteile?


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - Y-P - 28.08.2009 15:29

Kommt drauf an, was Du im SubVI machen möchtest. Möchtest Du z.B. mit einem Stop Button auf dem Frontpanel eine Schleife im SubVI beenden, dann wäre es schlecht, wenn Du keine Referenz hättest, weil Du die Schleife dann nie beenden könntest.

Gruß Markus


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - schrotti - 28.08.2009 15:42

Blöd ist es immer dann, wenn sowohl das Control als auch die zugehörige lokale Var ins Sub soll, denn erstellt LV im aufrufenden VI eine Kopie des Control und schleift die Referenz darauf ins automatisch erstellte Sub. Die Variable geht dabei allerdings verloren. Es bleibt nur, den Propetynode im Sub durch eine lokale Var zu ersetzen. Wohl ein dezenter Hinweis seitens LV, auf lokale Variablen zu verzichtenSmile


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - NafeZ - 28.08.2009 15:47

Deine Schilderung triffts genau! Ich habe die Referenzen dann, nach der Erstellung der SubVIs, dann immer wieder durch lok. Vars ersetzt (wie vorher). Aber ich dachte lok. Vars sind anerkannt und globale Variablen verpöhnt?!


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - schrotti - 28.08.2009 15:59

' schrieb:Aber ich dachte lok. Vars sind anerkannt und globale Variablen verpöhnt?!

Da gibts verschiedene Strömungen innerhalb der LV-Community Wink. Selber vermeide ich beides, verwende lokale eigentlich nie, globale ab und an.

Wobei das Verhalten von LV durchaus nachzuvollziehen ist, denn LV geht davon aus, das du einen Eingang und einen Ausgang im SubVI hast. Wenn du es verdrahtest werden ja auch die Controlls kopiert und der Code verschoben.


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - NafeZ - 28.08.2009 16:04

Na ihr seids lustig. Was soll man nun glauben als Anfänger? Oder muss ich da selber auf die Nase fallen? Wacko


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - A.Berndsen - 28.08.2009 16:20

' schrieb:Na ihr seids lustig.
Na klar sind wir das! LaberProstDance

Ich bin immer vorsichtig gegenüber einem Anfänger, Empfehlungen zu lokalen oder globalen Variablen auszusprechen.
Meide Devise lautet: "Wenn Du einen Wire ziehen kannst, dann tu das."
In meinen Programmen kann es schon mal vorkommen, daß ich lokale Variablen verwende. Aber äußerst spärlich, weil sie für mich nicht so recht ins Datenflußprinzip passen. Globale Variablen habe ich bisher noch nicht produktiv gebraucht. Dann schon eher FGV's aber das sind letztlich SubVI's.

Grüße
Andreas


Lokale Variablen -> Referenzen nach Erstellung eines SubVIs - schrotti - 28.08.2009 16:26

[/quote]
' schrieb:Ich bin immer vorsichtig gegenüber einem Anfänger, Empfehlungen zu lokalen oder globalen Variablen auszusprechen.
Ist auch ein heißes Eisen :Daber

' schrieb:Meide Devise lautet: "Wenn Du einen Wire ziehen kannst, dann tu das."
triffts genau.