WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Nicht gesetzte/verschwundene globale variablen

 

joekey
Forum-Century

Forum-Century


Beiträge: 169
Anmeldedatum: 03.04.08
Wohnort: Wien
Version: 2011b
     Beitrag Verfasst am: 06.02.2009, 14:28     Titel: Nicht gesetzte/verschwundene globale variablen
  Antworten mit Zitat      
Hallo,

ich habe ein Problem, der mich zum Wahnsinn treibt.

Ich habe eine Applikation implementiert die verschiedene Auswertungen macht. Sie besteht aus rund 12 Klassen die in einem Ordner platziert sind. Weitere 8 Klassen (M-files) befinden sich in 3 Unterordners. Einstiegspunkt für das Programm ist ein main.m script. In diesem definiere ich globale Variablen (pfade zum projekt, db treiber...) die weiter in dem Programm benutzt werden.

Das Programm läuft auf 3 Maschinen (2x Windows - keine Probleme mit globas, und ein mal auf Mac). Ganz merkwürdig ist, dass die globalen Variablen nicht in jedem File/Klasse verfügbar sind. Klingt merkwürdig ist aber so. Ich kann mir es nicht erklären. Ich habe es debugt, aber ohne ein zufriedenstellendes Ergebnis.

Wenn ich das Prog in Konsole starte, bei ersten Aufruf findet es die Globals nicht, ABER bei zweiten schon, ohne dass ich was im Code geändert hätte.

Hätte jemand eine Idee dazu?

LG Joe
Private Nachricht senden Benutzer-Profile anzeigen


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.02.2009, 16:28     Titel:
  Antworten mit Zitat      
Hast Du mal ein Beispiel für dieses Verhalten?

Folgende Funktion hat erst beim 3. Durchlauf alle Variablen deklariert.
Code:
function main
global A B C
A=2*B
B=2*C
C=2

Je nach dem was mit dem A beim ersten Durchlauf gemacht werden soll gibt es halt einen Fehler. Das sind die schönen side effects von globalen Variablen.
Meist ist es besser, mit Über- und Rückgabewerten von Funktionen zu arbeiten.
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.02.2009, 16:34     Titel:
  Antworten mit Zitat      
deklariert ist der falsche Ausdruck.
Erst beim 3. Durchlauf sind alle 'mit gültigen Werten belegt'.
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.