AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Class Operator und UInt64 ab welchem Delphi?
Thema durchsuchen
Ansicht
Themen-Optionen

Class Operator und UInt64 ab welchem Delphi?

Ein Thema von Delphi-Laie · begonnen am 10. Jul 2013 · letzter Beitrag vom 11. Jul 2013
Antwort Antwort
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#1

Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 12:11
Hallo Delphifreunde!

Mein Delphi 4 stößt sich am:

1. Konstrukt:

Delphi-Quellcode:
type
  TBigUInt = record
    class operator Implicit(a: Cardinal): TBigUInt;
Hier am Schlüsselwort "class". Ist wohl in Typ- und/oder Recorddefinitionen nicht zugelassen.

2. Datentyp "UInt64"


Weiß jemand aus dem Stegreif, ab welchem Delphi das erste und ab welchem Delphi das zweite unterstützt wird?

Delphi 7 verarbeitet beides, aber ich möchte es mit möglichst niedrigerem Delphi übersetzen und evtl. auf "Probeinstallationen" verzichten.

Danke im voraus und Gruß

Delphi-Laie
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.408 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 12:24
Klassenoperatoren funktionieren ab Delphi 2006.

UInt64 war wohl auch irgendwo in der Region eingeführt worden, aber das weiß ich nicht so genau.
// EDIT:
Delphi 7 hatte UInt64 jedenfalls noch nicht. Delphi 2006 meine ich schon, bin mir aber nicht sicher.

// EDIT2:
Du klingst ein wenig, als wüsstest du nicht was der Quelltext eigentlich macht, oder?
Damit geht dann sowas:
Delphi-Quellcode:
var
  a: TBigUInt;
begin
  a := 55;
Sprich implicit bedeutet, dass der Parametertyp automatisch in den Ergebnistyp umgewandelt wird. Genauso gibt es auch solche Klassenoperatoren, die z.B. die direkte Addition (a + b) für eigene Typen implementieren.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!

Geändert von jaenicke (10. Jul 2013 um 12:28 Uhr)
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#3

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 12:40
Delphi 7 hatte UInt64 jedenfalls noch nicht. Delphi 2006 meine ich schon, bin mir aber nicht sicher.
Delphi 7 hat uint64, aber es ist manchmal buggy, so ist zB bei
Delphi-Quellcode:
program xx;
{$apptype console}

var
  x: uint64;
begin
  x := uint64(-1);
  writeln(x);
end.
die D7-Ausgabe -1, D9 = D2005 gibt richtig 18446744073709551615 aus.
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#4

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 16:27
Danke Euch beiden!

Also, bei den Klassenoperatoren muß ich zurückrudern: Die kennt Delphi 7 doch noch nicht.

UInt64 kennt Delphi 7 (das schrieb ich schon oben), aber noch kein Delphi davor (ich installierte auch die 5er und 6er Version). Jedoch kennt die Hilfe zu Delphi 7 UInt64 nicht - und das bei einem neuen Datentyp. Wie (erb)ärmlich. Und erfolgreich wurde Delphi 7 auch nicht installiert: Beim Compilieren fehlt die Registrierung der bordbk70.dll. Immer mal wieder was neues. Naja, das werde ich auch noch hinbekommen. Ergänzung: Hab's hinbekommen.

Du klingst ein wenig, als wüsstest du nicht was der Quelltext eigentlich macht, oder?
Bei den Klassenoperatoren oder überhaupt?

So, das sicherste ist, gleich mit Turbo-Delphi weiterzumachen, anstatt sich mit Kinderkrankheiten herumzuärgern. Danke nochmal!

Geändert von Delphi-Laie (10. Jul 2013 um 16:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.408 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 16:37
Bei den Klassenoperatoren oder überhaupt?
Bei den Klassenoperatoren, ja. Das hörte sich ein wenig so an:
Zitat:
Hier am Schlüsselwort "class". Ist wohl in Typ- und/oder Recorddefinitionen nicht zugelassen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 16:42
Genau darum ging es mir doch: in den unteren Delphiversionen ist dieses Schlüsselwort in Typ-/Recorddefinitionen nicht, ab einer bestimmten Delphiversion eben doch zugelassen (nun weiß ich es). Diese Beobachtung ist doch unabhängig davon, ob die dahinterstehenden Ideen verstanden werden.
  Mit Zitat antworten Zitat
Insider2004
(Gast)

n/a Beiträge
 
#7

AW: Class Operator und UInt64 ab welchem Delphi?

  Alt 10. Jul 2013, 22:57
Nach D7 begann die dunkle Zeit für Delphi. Der Entwickler, der Int64 entwickelt hatte wurde gefeuert und viele andere auch. Somit war der Datentyp nur teilweise implementiert.
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:28 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