LabVIEWForum.de
Arbeiten mit Referenzen oder lokalen Variablen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Arbeiten mit Referenzen oder lokalen Variablen (/Thread-Arbeiten-mit-Referenzen-oder-lokalen-Variablen)



Arbeiten mit Referenzen oder lokalen Variablen - nicart - 30.11.2006 11:26

Hallo Leute!

Ich bin schon mehrmals über das Problem gestolpert dass wenn ich ein sehr umfangreiches Programm habe eine Kleinigkeit ändere, alles in den Subvi's auch ändern muss.

Also nochmal!
Ich verwende Cluster damit ich nicht so viele Werte an die SubVi's übergeben muss und damit eine Ordnung im Programm habe.
Dabei übergebe ich an die SubVi's immer die Referenz und arbeite im SubVi selber dann immer mit Eigenschaftskonten.
So aber nun komme ich drauf das ich zum dem bestehendem Cluster noch Element hinzufügen bzw. entfernen will und muss nun in JEDES SubVI gehen in dem sich Eigenschaftsknoten von diesem Cluster befindet und diesen mit dem Eigenschaftknoten des "neuen" Clusters ersetzen.
Das ist sehr Zeitaufwendig denn wie gesagt sind manche Programme sehr umfangreich.

Wie löst ihr das Problem?
Arbeitet ihr mit Referenzen oder mit lokalen Variablen und übergebt immer die normale Datenleitung?

Gruß

nicart


Arbeiten mit Referenzen oder lokalen Variablen - marker - 30.11.2006 11:33

Hallo nicart,

Datenleitungen zu ziehen ist die beste Lösung
Die Benutzung von lokalen und globalen Variablen sollte möglichst vermieden werden.
Sehr gut ist die Verwndung der "Funktionalen globalen Variable" (siehe Anhang).
Um das Problem der aufwändigen Clusteränderungen zu beheben solltest Du von den Clustern Typen definieren (Type Def. oder Strict Type Def.).

Gruß,
Marko


Arbeiten mit Referenzen oder lokalen Variablen - nicart - 30.11.2006 11:54

-_-
Danke für die schnelle Antwort!

Ich finde das schadet aber sehr der Übersichtlichkeit und der Lesbarkeit des Quellcodes wenn ich zu jedem Case und sonst überallhin eine Datenleitung ziehen muss.
Ich arbeite mit Erzeuger/Verbraucherschleifen (Ereignisgesteuert).

Das mit den Typdefinitionen ist wahrscheinlich ein guter Lösungsweg jedoch will ich ja nicht immer nur auf den Wert des Clusters zugreifen sonder es auch mal aktivieren, deaktivieren, Hintergrundfarbe bei einem Fehler ändern usw..
Und dazu brauche ich dann ja doch wieder die Eigenschaftsknoten, oder?

Nochmals Danke.

Gruß
nicart


Arbeiten mit Referenzen oder lokalen Variablen - jg - 30.11.2006 11:55

<div align="left">Hallo, nicart,

stimme Marko zu, bei Clustern, die du oft innerhalb des Programms verwendest, lohnen sich Type Definitions.

Zu Referenzen hätte ich noch einen Tip, ist aber für deine Anwendung vielleicht etwas unausgegoren: Man kann eine Referenz auch von der strikten Typ-Definition trennen, d.h. dass man z.B. nur die Referenz auf einen "beliebigen" Cluster übergeben kann. Innerhalb der Sub-VI's könnte man dann diese allgemeine Referenz mit Hilfe der Cluster-Typ-Definition wieder zurückverwandeln.

MfG, Jens</div>