Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

Re: Dynamisches Array als Parameter einer Prozedur

  Alt 29. Dez 2004, 16:15
Zitat von paresy:
vllt weiß ja noch jemand wieso das so sein muss... und nicht auch anders geht...
Das liegt an der Typidentität.

In der Delphi 7 Onlinehilfe steht
Typidentität

Für die Typidentität gilt folgende Regel: Wenn ein Typbezeichner mit einem anderen Typbezeichner deklariert wird (ohne Qualifizierer), bezeichnen beide denselben Typ. Betrachten Sie die folgenden Typdeklarationen:

Delphi-Quellcode:
type
  T1 = Integer;
  T2 = T1;
  T3 = Integer;
  T4 = T2;
Hieraus folgt, dass T1, T2, T3, T4 und Integer identische Typen sind. Um unterschiedliche Typen zu definieren, wiederholen Sie das Wort type in der Deklaration. Ein Beispiel:

type TMyInteger = type Integer; Diese Anweisung erzeugt z. B. einen neuen Typ namens TMyInteger, der nicht mit Integer identisch ist.

Sprachkonstrukte, die als Typnamen fungieren, erzeugen bei jedem Auftreten einen anderen Typ. Die folgenden Typdeklarationen

Delphi-Quellcode:
type
  TS1 = set of Char;
  TS2 = set of Char;
definieren beispielsweise die beiden unterschiedlichen Typen TS1 und TS2. Entsprechend werden mit den Variablendeklarationen

Delphi-Quellcode:
var
  S1: string[10];
  S2: string[10];
zwei Variablen unterschiedlichen Typs erzeugt. Um Variablen mit identischem Typ zu deklarieren, gehen Sie folgendermaßen vor:

var S1, S2: string[10]; or

Delphi-Quellcode:
type CString = string[10];
var
  S1: MyString;
  S2: MyString;
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat