Difference between revisions of "Type Helper/de"
From Lazarus wiki
Jump to navigationJump to search (Created page with "{{Type Helper}} Zurück zu den reservierten Wörtern.<br> <br> =Type Helper= Mit dieser Funktion kann man Bezeichner um Funktionen erweitern.<br> Die Fu...") |
|||
Line 34: | Line 34: | ||
vec[1]:= 2.5; | vec[1]:= 2.5; | ||
− | vec.Scale(2.0, 3.0); | + | vec.Scale(2.0, 3.0); // Erweiterte Funktion aufrufen. |
WriteLn(vec[0]:10:5); | WriteLn(vec[0]:10:5); | ||
Line 46: | Line 46: | ||
7.50000 | 7.50000 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== Siehe auch == | == Siehe auch == |
Revision as of 19:32, 16 January 2018
Zurück zu den reservierten Wörtern.
Type Helper
Mit dieser Funktion kann man Bezeichner um Funktionen erweitern.
Die Funktion Type Helper wird zum Teil auch bei Standard-Typen von FPC verwendet. ZB. String.Spitt
Type Helper steht erst ab FPC 3.0 zu Verfügung.
Beispiel
Hier wird ein Vektor um die Funktion Scale erweitert.
program Project1;
{$modeswitch typehelpers}
type
TVector2f = array[0..1] of Single;
TVector2fHelper = Type Helper for TVector2f
procedure Scale(x, y: Single);
end;
procedure TVector2fHelper.Scale(x, y: Single);
begin
Self[0] *= x;
Self[1] *= y;
end;
var
vec: TVector2f;
begin
vec[0]:= 1.5;
vec[1]:= 2.5;
vec.Scale(2.0, 3.0); // Erweiterte Funktion aufrufen.
WriteLn(vec[0]:10:5);
WriteLn(vec[1]:10:5);
end.
Ausgabe:
3.00000
7.50000
Siehe auch
- Übersichtseite Type
Autor: Mathias