AGB  ·  Datenschutz  ·  Impressum  







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

wie gibt man "nix" zurück?

Ein Thema von Pseudemys Nelsoni · begonnen am 28. Sep 2004 · letzter Beitrag vom 28. Sep 2004
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

wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:13
hoi,

ich habe eine funktion, ca so:

Delphi-Quellcode:
function bla: MyRecord
begin
  result := nix; { falls später ein fehler auftritt soll halt nix zurückgegeben werden }
  if irgendwas() then result := aRecord;
end;

ohne die erste zeile bekomme ich ja immer warnungen wie:

"ergebnis könnte undefiniert sein"

was tu ich dagen? sowas wie {$WARNINGS OFF} wollte ich eigentlich nich benutzen.
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:16
nil hilft nicht?
  Mit Zitat antworten Zitat
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#3

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:16
dafür gibt es den ausdruck "nil"

das ist ein zeiger der sozusagen nirgendwo hinzeigt
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

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

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:20
ne nil geht nicht, schon getestet


Zitat:
[Fehler] database.pas(128): Inkompatible Typen: 'TDBFileItem' und 'Pointer'
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:24
Wenn dein Rückgabetyp ein Record ist, dann wird auch ein Exemplar des entsprechenden Records zurückgeliefert. Entweder du stellst dein Design um oder du fügst deinem Record ein Feld hinzu, das anzeigt, dass der Record nicht gültig initialisiert ist.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#6

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:33
probiert mal einem leeren string zu nehmen -> ''


wenn nichts passiert, weise einfach einen lehren string zu,
du muesstest auch mal posten, vom was für einem typ TDBFile ist.
so wie ich das vermute, ist es ein record, was sich aus verschiedenen datentypen zusammensetzt.
warum willst du uberhaupt nicht zuweisen.

ich wuerde es so machen, das ich den record bei programmstart mit vom mir definierten
werten füttere, und du noch ne abfrage machst, das wenn halt diese werte drinsind then do nothing

[edit=r_kerber]Doppelpost gelöscht. Mfg, r_kerber[/edit]
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

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

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:35
Delphi-Quellcode:
  TDBFileItem = record
    irgendwas: string[12];
    Password: TMD5Digest;
    fgjgj: string[255];
    ghgj: string[255];
  end;

so sieht er aus

[edit=r_kerber]Doppelpost gelöscht. Mfg, r_kerber[/edit]
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:40
Hi,

Wo immer möglich würde ich persönlich anstelle von Records lieber Nachfahren von TObject benutzen , damit lässt sich imho viel besser arbeiten...
Dani H.
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:41
hi,

ich würde dem record noch ein feld namens "error" (oder so ähnlich) hinzufügen. standardmäßig ist der wert 0. wenn ein fehler auftritt , dann ist der wert 1.
nachdem die funktion aufgerufen wurde und ein record zurückgegeben hat, überprüfst du, ob error=0. wenn nicht, dann ist das zurückgeliferte record unbrauchbar

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

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

Re: wie gibt man "nix" zurück?

  Alt 28. Sep 2004, 20:41
eine klasse als rückgabewert?

aeneogm: danke, mal versuchen

auch an alle anderen danke
Mario
MSN: cyanide@ccode.de
  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 05:11 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