Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#14

Re: Datentyp einer Variablen ermitteln

  Alt 10. Jan 2008, 18:44
Zitat von RWarnecke:
Zitat von oldmax:
Hi
Zitat:
Wäre hier nicht eine Case-Anweisung vorteilhafter ?
selbstverfreilich.... wenn die ft.. -Konstanten Integer sind, was ich aber jetzt so ohne meine Programmiermaschine nich weiß
Gruß oldmax
Die ft..-Konstanten sind Integer-Werte.
Eher eine Aufzählung, also eine Enumeration, und die wird immer als Ordinaltyp umgesetzt und ist somit immer mit einer Case Verzweigung nutzbar. Ob die Enumeration aber eine Größe von 4 Bytes (also Integer) hat, liegt an den Compilerparametern. {$Z4} bzw. {$Z+} würde das entsprechend regeln.

Hinweis: Wenn euer Quellcode vom C++ und Delphi benutzt wird, dann wird die Einstellung in den Projektoptionen im C++ Projekt für den Pascal Compiler im BDS2006 für alle nicht direkt eingebundenen Pascal Quellen ignoriert! Dies ist ein Bug, ihr solltet somit mit solchen direkten Compiler Optionen im Quelltext arbeiten, damit das stimmt.

Wir sind damit deftigst auf dir Schnauze gefallen, da die Pascalquellen trotz der Einstellung im Projekt (und allen Libs, etc) eine Größe von 1 Bytes hatten während der C++ Compiler überall Code für 4 Bytes generierte. Da kam schöner Speicherschrott raus, bzw. die Instanzen waren schneller intern zerschossen als man denken konnte. Nur einer von vielen noch vielen Bugs im Zusammenspiel Delphi <-> C++.

Der Bug wurde noch nicht in der Quality Central eingetragen. Der liegt noch - neben einigen anderen Bugs - auf der ToDo Liste und ich werde ihn noch melden!
  Mit Zitat antworten Zitat