CodeToHTML




C#でまずやりたかったのがid:santamartaさんのCodeToHTMLのDelphi対応。というわけでサクっとやっちゃいました。

結果。

program OverloadSample;

{$APPTYPE CONSOLE}

uses
SysUtils;

type
TVector2D = class
private
x, y: Integer;
public
constructor Create(xx, yy: Integer);
class operator Add(a, b: TVector2D): TVector2D;
class operator Multiply(a: TVector2D; b: Integer): TVector2D;
{ とりあえずこんなところで }
end;

constructor TVector2D.Create(xx, yy: Integer);
begin
inherited Create();
x := xx;
y := yy;
end;

class operator TVector2D.Add(a, b: TVector2D): TVector2D;
begin
Result := TVector2D.Create(a.x + b.x, a.y + b.y);
end;

class operator TVector2D.Multiply(a: TVector2D; b: Integer): TVector2D;
begin
Result := TVector2D.Create(a.x * b, a.y * b);
end;

var
a, b, c: TVector2D;
begin
a := TVector2D.Create(5, 10);
b := TVector2D.Create(2, 2);
c := a + b;
Writeln(Format('x = %d, y = %d', [c.x, c.y]));
c := a * 10;
{ c := 10 * a; // だめ }
Writeln(Format('x = %d, y = %d', [c.x, c.y]));
Readln;
end.

色々キーワードに引っかかってるけど(・ε・)キニシナイ!!



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です