0
は、次のコードを見てみましょう:私は、これはあなたがオブジェクトのdeepcopyクローニングを行うだろうかであることを考えていますDelphi Prism:このdeepcopyまたはshallowcopyですか?
method TMakerRect.Clone: TMakerObject;
var
newRect:TMakerRect;
begin
newRect := new TMakerRect(bounds,myForm);
newRect.Assign(Self);
newRect.theBrushStyle := Self.theBrushStyle;
Result := newRect;
end;
method TMakerGraphic.Assign(obj:TMakerObject);
begin
inherited Assign(obj);
if obj is TMakerGraphic then
begin
thePen:=TmakerGraphic(obj).thePen;
FillColor:=TMakerGraphic(obj).fillColor;
dynamics:=TmakerGraphic(obj).dynamics;
end;
end;
。そうであれば、これらのオブジェクトは別々のオブジェクトであるかのように動作するはずですが、そうではありません。私が変更するたびに、例えばペンの幅は元のオブジェクトのペン幅を変更します。助けてください。
ありがとうございます。
romkyns:ファンタスティック、それが動作します。ありがとうございました。 – ThN