投稿者 るしぇ  () 投稿日時 2008/7/15 20:56:00
一本化したルールで覚えて問題無いなら、手法を統一して覚える手間を省き 
ミスを少なくしたいという思いはあるのですが、Dispose は難しいですかねぇ。 
 
るきおさん提示のリンク先から更に 
[オブジェクトの有効期間 : オブジェクトの作成と破棄] 
http://msdn.microsoft.com/ja-jp/library/hks5e2k6(VS.80).aspx 
があるわけですが、の時代にクラスの初期処理と終了処理を 
Class_Initialize と Class_Terminate に書いていました。 
# フォームだと Load イベントに書く場合も多かったですが。  
 
インスタンスの生成時は New だけど、終了処理は?って時に迷います。 
ここに書いておけば終了時に実行され、Base クラスで共通化されてる 
ような終了処理が欲しかったです。 
 
ただ、お話を聞いてると Dispose はリソースの破棄が無い場合は 
実装しない方が良さそうですかねぇ。 
でも、それだと終了処理を共通化できるようなコードは難しいですか。 
# 対象のオブジェクトに Dispose が実装されているかどうかを判断するの 
# って、キャストでエラートラップになりますよね? 
 
>使用したクラスに Dispose が実行されている場合は必ず実行しておくように心掛けて 
>おいたほうがよいのでしょうか?(初級講座第2回の Pen クラス等) 
Button1_Click で CreateGraphics してる場合などは実行すべき場面です。 
しかし、Paint イベントの e.Graphics では実行してはいけません。 
理由は 
>・自分自身でそのクラス/構造体のインスタンスを作成していること 
による違いです。 
 
やっぱり個々の場面毎に覚えていく必要もあるなぁ。。。