オブジェクト指向 Part2
■ このスレッドは過去ログ倉庫に格納されています
0635デフォルトの名無しさん
NGNGみなさんの書き込み見ると、まだ理解できてなかったっぽい…(汗
>>628さん
使う側の例でn2 := TNum.Create; してないのは、numChangeメソッド内で生成してるからですよね?
それに対して n2.Free; は使う側にありますが、このようなメソッドはpublicで他のユニットで使う時など、
メソッドのコードが見えないので、開放するのを忘れちゃいそうですよね?
これは(;;゜Д゜)マズー
>>629さん
それの方がシンプルだし、自然っぽいですよね。
今は戻り値がクラス型なメソッドの勉強中なので、不自然ですが勘弁してください。
>>631
>n2をどうしても使いたいなら、n2 := TNum.Create; n2.Free; を消して、
>n2 := TNum.Create; の代わりに、n2 := Self; って入れるとか(笑
この方法は結局オブジェクトを二つ作るのではなく、
newChangeメソッド内でn1をあたかもn2の様に扱うということですね。
その方法だと、使う側でFree; しなくて良いので大変助かります。(笑)
■ このスレッドは過去ログ倉庫に格納されています