AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Globale Variablen

Ein Thema von Pseudemys Nelsoni · begonnen am 11. Okt 2003 · letzter Beitrag vom 12. Okt 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Globale Variablen

  Alt 11. Okt 2003, 14:01
Hoi,

ich benutze ziemlich oft globale variablen, ich höre aber immer wieder das das scheisse ist.
Nun mal meine Frage: Wie soll ich denn einen zustand aus 2 prozeduren heraus sonst ändern? soll ich die variablen in einer datei ablagen?(ist wohl noch blöder)...wie gesagt ich möchte mit 2 prozeduren einen zustand(bolesche variable) prüfen...aber wie mach ich sowas ohne globale variablen ?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#2

Re: Globale Variablen

  Alt 11. Okt 2003, 14:03
Indem Du an etwas OOP denkst und Dir ne neue Klasse machst... Zum Bleistift...
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#3

Re: Globale Variablen

  Alt 11. Okt 2003, 14:06
Da gibts auch noch ein Thread zu dem Thema:
http://www.delphipraxis.net/internal...hlight=globals
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#4

Re: Globale Variablen

  Alt 11. Okt 2003, 15:19
was meinst du mit neuer klasse?
In dem thread seh ich leider auch keine alternative zu globalen variablen
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Globale Variablen

  Alt 11. Okt 2003, 15:22
Globale Variablen sind nicht generell schlecht. Man sollte nur wissen, was man tut.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#6

Re: Globale Variablen

  Alt 11. Okt 2003, 15:33
hoi luckie, jo, genau so denke ich (eigentlich) auch.
Aber ich kriege das halt oft zu hören, da ich manchmal viele globale habe.
zum beispiel sowas(macht keinen sinn aber so als beispiel eben):

VAR irgendwas: Boolean;
Delphi-Quellcode:
procedure 1;
  begin
    irgendwas := false;
  end;
Delphi-Quellcode:
procedure 2;
  begin
    irgendwas := true;
  end;

also mit 2 proceduren, eine bestimmte variable ändern, für mich gibts da eigentlich nur dateien wo man die variable reinpackt, die registry, oder eben die globale variable....letztere ist ja wohl die einfachste...oder geht es auch noch anders?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#7

Re: Globale Variablen

  Alt 11. Okt 2003, 15:35
Wie wäre es denn mit der Nutzung von Klassenfeldern - die von mir bevorzugte Methode und bei uns im Hause auch erzwungene Methode Kündigungen können ja soooo einfach ausgestellt werden

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Globale Variablen

  Alt 11. Okt 2003, 15:38
Moin Silent,

bei den von Dir genannten Beispiel könntest Du ja mal prüfen, ob es nicht sinnvoll wäre die beiden Prozeduren als Methoden zu des Formulares zu deklarieren, und die Variable als Eigenschaft/Feld im Formularobjekt, oder ob es eventuell sinnvoll wäre diese drei Teile in einer eigenen Klasse zusammenzufassen, die dann wiederum als Typ einer Eigenschaft eines anderen Objektes dient.

Ausserdem kann man noch zwischen unit- und projektglobal unterscheiden.
Wird die Variable erst unter implementation deklariert so ist sie für andere Units nicht sichtbar, und somit würde sich die Gefahr verringern die Variable unbeabsichtigt zu verändern.
Am gefährlichsten ist eben die Deklaration im interface Abschnitt.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#9

Re: Globale Variablen

  Alt 11. Okt 2003, 15:57
sakura: wie verwende ich die ?

christian: dein erklärung ist sicher für gute programmierer spitze erklärt, ich versteh sie allerdings nicht so, da ich nicht weiss wie ich die beiden prozeduren als methoden des formulars benutzen könnte, und mit klassen hab ich noch nicht gearbeitet. :\

gibt es ein beispiel?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Globale Variablen

  Alt 11. Okt 2003, 16:54
Delphi-Quellcode:
TForm1 = class(TForm)
private
 irgendwas: Boolean;
 procedure do1;
 procedure do2;

[...]
var
 form1: TForm1;
[...]

procedure TForm1.do1;
begin
 irgendwas := False;
end;

procedure TForm1.do2;
begin
 irgendwas := False;
end;
oder

Delphi-Quellcode:
TForm1 = class(TForm)
public
 irgendwas: Boolean;

[...]
var form1: TForm1;
[...]

procedure do1;
begin
 form1.irgendwas := False;
end;

procedure do2;
begin
 form1.irgendwas := False;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz