Index
index - słowo kluczowe języka Delphi
Słowo kluczowe używane podczas eksportowania procedur oraz funkcji z biblioteki DLL. Eksportować funkcje oraz procedury można na dwa sposoby: przez nazwę oraz przez indeks.
Wyeksportowanie procedury czy też funkcji poprzez indeks polega jedynie na użyciu dyrektywy index.
Jeśli w takim wypadku chcemy wykorzystać owe funkcje, należałoby w naszej aplikacji zapamiętać indeksy, z jakimi są one eksportowane z biblioteki DLL. Łatwiej jest jednak zapamiętać nazwy niż cyfry, stąd eksportowanie przez indeks jest używane dość rzadko.
Słowo kluczowe index jest używane także przy definiowaniu właściwości klas, które są odczytywane (i zapisywane) przez metodę, która posiada dodatkowy argument, typu integer. Najczęściej to rozwiązanie stosuje się w celu uniknięcia wielokrotnego kopiowania bardzo podobnych metod, zwracających wartości właściwości.
Składnia:
Przy czym, definicja metody powina wtedy wyglądać np. tak (argument idx ma wartość, która znajduje się za słowem index, w definicji właściwości, którą odczytujemy):
Przykład:
Zobacz też:
Eksportowanie funkcji
Słowo kluczowe używane podczas eksportowania procedur oraz funkcji z biblioteki DLL. Eksportować funkcje oraz procedury można na dwa sposoby: przez nazwę oraz przez indeks.
Wyeksportowanie procedury czy też funkcji poprzez indeks polega jedynie na użyciu dyrektywy index.
Jeśli w takim wypadku chcemy wykorzystać owe funkcje, należałoby w naszej aplikacji zapamiętać indeksy, z jakimi są one eksportowane z biblioteki DLL. Łatwiej jest jednak zapamiętać nazwy niż cyfry, stąd eksportowanie przez indeks jest używane dość rzadko.
Właściwości klas
Słowo kluczowe index jest używane także przy definiowaniu właściwości klas, które są odczytywane (i zapisywane) przez metodę, która posiada dodatkowy argument, typu integer. Najczęściej to rozwiązanie stosuje się w celu uniknięcia wielokrotnego kopiowania bardzo podobnych metod, zwracających wartości właściwości.
Składnia:
Przy czym, definicja metody powina wtedy wyglądać np. tak (argument idx ma wartość, która znajduje się za słowem index, w definicji właściwości, którą odczytujemy):
Przykład:
type
TRectangle = class
private
FCoordinates: array[0..3] of Longint;
function GetCoordinate(Index: Integer): Longint;
procedure SetCoordinate(Index: Integer; Value: Longint);
public
property Left: Longint index 0 read GetCoordinate write SetCoordinate;
property Top: Longint index 1 read GetCoordinate write SetCoordinate;
property Right: Longint index 2 read GetCoordinate write SetCoordinate;
property Bottom: Longint index 3 read GetCoordinate write SetCoordinate;
property Coordinates[Index: Integer]: Longint read GetCoordinate write SetCoordinate;
end;
//...
TRectangle = class
private
FCoordinates: array[0..3] of Longint;
function GetCoordinate(Index: Integer): Longint;
procedure SetCoordinate(Index: Integer; Value: Longint);
public
property Left: Longint index 0 read GetCoordinate write SetCoordinate;
property Top: Longint index 1 read GetCoordinate write SetCoordinate;
property Right: Longint index 2 read GetCoordinate write SetCoordinate;
property Bottom: Longint index 3 read GetCoordinate write SetCoordinate;
property Coordinates[Index: Integer]: Longint read GetCoordinate write SetCoordinate;
end;
//...
Zobacz też:


