AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

type überprüfung

Ein Thema von day · begonnen am 1. Sep 2004 · letzter Beitrag vom 2. Sep 2004
Antwort Antwort
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#1

type überprüfung

  Alt 1. Sep 2004, 21:06
hallo

ich übergebe einer Funktion eine TQuery. Wie kann ich überprüfen ob es sich beim übergebenen objekt wirklich um eine TQuery handelt?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: type überprüfung

  Alt 1. Sep 2004, 21:11
Hi day!

Mit
Delphi-Quellcode:
if <Variable> is TQuery then
bla;
Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: type überprüfung

  Alt 1. Sep 2004, 21:11
Sagen wir mal das Objekt heisst: ShouldBeQuery dann:
Delphi-Quellcode:
if ShouldBeQuery is TQuery then
begin
  // yeah!
  [...]
end
else
begin
  ShowMessage(ShouldBeQuery.ClassType.ClassName);
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#4

Re: type überprüfung

  Alt 1. Sep 2004, 21:21
Ich mache diese Abfrage im Konsturktor. Folglich kann ich keinen rückgabewert zurückgeben falls es keine TQuery ist. Hat jemand eine Idee wie ich das lösen könnte. Dachte da an eine Exception. Wie kann ich die werfen?
  Mit Zitat antworten Zitat
Chewie

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

Re: type überprüfung

  Alt 1. Sep 2004, 22:42
Zitat von day:
Dachte da an eine Exception. Wie kann ich die werfen?
Ja, Exception ist perfekt in diesem Fall, da für das Objekt reservierter Speicher dann freigegeben wird. Erzeugen der Exception mit
raise <Exceptiontyp>.Create(<optionale Parameter>);
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.007 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#6

Re: type überprüfung

  Alt 2. Sep 2004, 09:19
Zitat von Chewie:
Ja, Exception ist perfekt in diesem Fall, da für das Objekt reservierter Speicher dann freigegeben wird.
Noch besser ist Assert (Löst auch eine Exception aus, wenn der Ausdruck nicht true ist!), weil sich die Sache auf eine Zeile beschränkt:
Assert(MyQuery is TQuery, Format('TQuery-Objekt erwartet, %s-Objekt gefunden!', [MyQuery.ClassName]));
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 16:01 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