AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Was ist eigentlich der Unterschied zwischen "type" und "type of"?

Was ist eigentlich der Unterschied zwischen "type" und "type of"?

Ein Thema von Codehunter · begonnen am 12. Sep 2018 · letzter Beitrag vom 12. Sep 2018
Antwort Antwort
Hobbycoder

Registriert seit: 22. Feb 2017
1.002 Beiträge
 
#1

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 10:33
Mit type of bekommst Du einen neuen Typ der nicht zum Original Kompatibel ist...
Ich gehe mal davon aus, ohne es wirklich probiert zu haben, dass man mit den Typen dann aber ohne Cast rechnen kann (sonst würde Codehunter das nicht so nutzen).
Insofern kann man das durchaus zu seinem Vorteil nutzen. Zum Beispiel in Methodenparametern, um schon beim Aufruf eine klar definierte Einheit zu signalisieren.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 10:41
Claro dann noch passende Helper und wieder ein bisschen mehr Sicherheit........
Fritz Westermann
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.284 Beiträge
 
Delphi 12 Athens
 
#3

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 11:38
Claro dann noch passende Helper und wieder ein bisschen mehr Sicherheit........
Bingo! Genau da wollte ich gedanklich auch hin. So kollidiert man auch nicht mit evtl. existierenden Helpern der Ursprungstypen. Allgemein bin ich immer für etwas mehr Striktheit im Code. Das beugt Flüchtigkeitsfehlern vor und macht den Code später besser lesbar.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

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

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 12:39
type of ist einfach nur ein Bug und ich möchte jedem davon abraten, das zu nutzen.

Ein Typ, der mit type of deklariert ist, wird vom Compiler als TypeKind tkClassRef behandelt.

Delphi-Quellcode:
uses
  TypInfo;

type
  Special = type Cardinal;
  CardinalType = type of Cardinal;
var
  c: Cardinal;
  s: Special;
  ct: CardinalType;
  tk: TTypeKind;
begin
  Writeln(GetEnumName(TypeInfo(TTypeKind), Ord(GetTypeKind(CardinalType))));

  ct := Cardinal; // WAT?!
  ct := Special; // BOOM!

end.
Wenn man mal beim Debuggen über die Variable vom Typ ct geht, sieht man, dass es ein Referenz und kein Ordinaltyp ist (vorm Zuweisen zeigts nil an und nicht 0).
Dass man trotzdem Ordinalvariablen zuweisen kann, liegt daran, dass es nunmal bugged ist.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (12. Sep 2018 um 12:51 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.284 Beiträge
 
Delphi 12 Athens
 
#5

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 13:48
Also auch noch eine verbuggte Altlast Dann war ich ja richtig das ich immer type ohne of verwendet habe.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Was ist eigentlich der Unterschied zwischen "type" und "type of"?

  Alt 12. Sep 2018, 14:42
Ich hätte geschworen das wir das so benutzen...........
Habe aber nachgeschaut wit benutzen Records mit implicit und explicit Umwandlungen......
Es ist sogar in den Tests die falsche Typ Geschichte drin.......
Schande über mein Haupt, hätte vor dem Posten schauen sollen
Fritz Westermann
  Mit Zitat antworten Zitat
Antwort Antwort

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 15:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz