-3

管理されていないリソースをクリーンアップしたいときに using キーワードが使用されることは誰もが知っています。

クラスが実装する場合、そのクラスのオブジェクトでキーワードをIDisposable使用できます。しかし、自分のクラスのオブジェクトでキーワードusingを使用したい場合は、どうすれば使用できますか。using

IDisposable自分のクラスに実装する必要がある場合は、そのDispose()メソッドのコードも自分のクラスに記述する必要があります。次に、メソッドusingで独自のコードを記述しているときに、ここでキーワードを使用しても意味がありません。Dispose()次に、ユーザー定義型 (クラスや構造体など) で using を使用するにはどうすればよいですか。

いくつかの例で説明してください。

4

3 に答える 3

5

usingキーワードのポイントは、クラスのインスタンスを呼び出す ため、使い終わったら自分で記述する必要がないことです。そのメソッドを作成しても役に立ちません。アンマネージ リソースをどのように破棄するかをフレームワークに正確に伝えるために、自分で作成する必要があります。Dispose()myDisposableObject.Dispose()

IDisposableインターフェイスとそのメソッドを実装する方法を明確に知っているため、どのような例を探しているのかわかりませんDispose()。ここで言えることは、処分する管理されていないリソース (またはそれ自体が であるメンバーIDisposable) がない場合は、 を実装IDisposableせず、 を使用しないということだけusingです。このキーワードは、管理されていないリソースを持っているものを便利に使用するためだけに予約されており、そうでなければ手動でクリーンアップする必要があります。

于 2013-02-02T09:57:42.140 に答える