AGB  ·  Datenschutz  ·  Impressum  







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

Type im einer Klasse -> public erlaubt?

Ein Thema von Mokus · begonnen am 1. Okt 2013 · letzter Beitrag vom 2. Okt 2013
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#1

AW: Type im einer Klasse -> public erlaubt?

  Alt 1. Okt 2013, 08:12
Das es sich um einen Nested Type handelt, musst du ihn außerhalb der Klasse voll qualifizieren:

    function sortieren(d_array: Twoerterzaehlen.arroftwoerter): Twoerterzaehlen.arroftwoerter;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Type im einer Klasse -> public erlaubt?

  Alt 1. Okt 2013, 08:17
Das ich diese vollständig weiter geben muss, war mir nicht bekannt.

Dank euch.
Markus
es gibt nur 10 arten von menschen !
die die binär verstehen und die die nicht. !
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.553 Beiträge
 
Delphi 12 Athens
 
#3

AW: Type im einer Klasse -> public erlaubt?

  Alt 1. Okt 2013, 11:14
Das es sich um einen Nested Type handelt, musst du ihn außerhalb der Klasse voll qualifizieren:
Jain.

Also zumindesntens bis XE geht es auch ohne einen vollqualifizierten Typbezeichner.

irgendwann danach wurden dann (zumindestens weiß ich es von ENUMs) im Compiler eine Option eingebaut, bzw. standardmäßig aktiviert, welche die Angabe des Namespace (vollqualifizierten Typbezeichners) verlangt,
welches man aber auch wieder deaktivieren kann.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Type im einer Klasse -> public erlaubt?

  Alt 1. Okt 2013, 15:17
Aber könnte durch das Deaktivieren nicht auch die Eindeutigkeit verloren gehen;
und somit eine verwechslung vorkommen?
Ich persönlich finde schon, dass es nützlich ist eine eindeutige qualifizieren "auszusprechen"
Markus
es gibt nur 10 arten von menschen !
die die binär verstehen und die die nicht. !
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.553 Beiträge
 
Delphi 12 Athens
 
#5

AW: Type im einer Klasse -> public erlaubt?

  Alt 1. Okt 2013, 16:38
Man kann es praktisch für jeden Typen einzeln angeben.

Nja, also wo es wirklich absolut unleserlich wird, ist da, wo z.B. mehrere/viele ENUMs als SET angegeben werden müssen und man da nicht viel als Bereich (..) zusammenfassen kann.

WITH mit Typen gibt es doch bestimmt noch nicht und wer kommt schon auf die Idee sich dafür einen lokalen Typen/Alias mit "kurzem" Bezeichner anzulegen und am Besten einbuchstabig?



Selbst wenn es dektiviert wurde, dann kann man immernoch per NameSpace zugreifen, wenn es nicht eindeutig ist.
Außerdem prüft ja der Compiler die Typkompatibilität, womit man sowieso keinen falschen Wert verwenden kann.

Praktisch ist das vorallem dadurch, daß man bei den Werten den Prefix weglassen kann.
Delphi-Quellcode:
type
  TEnumeration = (Onw, Two, Tree);
Wobei "kann" besser "sollte" heißen sollte, denn Namespace und Prefix zusammen sind ja ein bissl sinnlos.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 1. Okt 2013 um 16:40 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Type im einer Klasse -> public erlaubt?

  Alt 2. Okt 2013, 06:59
Zitat:
Wobei "kann" besser "sollte" heißen sollte, denn Namespace und Prefix zusammen sind ja ein bissl sinnlos.
hust,
doppelt hält besser

irgendwer muss immer drunter leiden...
arme performance :p
Markus
es gibt nur 10 arten von menschen !
die die binär verstehen und die die nicht. !
  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 23:40 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