ZerOx4Cの日記だったもの

インポートだけしました

コンストラクタとthisキーワード

MSDNをよく読んでおけば今までこんな非効率なことをしなくて済んだろうに・・・


クラスを継承したときには、コンストラクタではbaseキーワードを使って親クラスのコンストラクタを呼び出す必要があります。(パラメータがある場合は。
つまりはthisキーワードを使えば自分のも呼び出せるんじゃね?と思って書いてみたらやっぱり動きました。やったね。まぁ、MSDNに普通に載ってるわけですが。
要するにオーバーロードに使いますね。こんな感じ。

public class Hoge {

	public Hoge(int foo) {
		// ごにょごにょ
	}

	public Hoge(int foo, int bar) : this(foo) {
		// ごにょごにょ
	}

}

今まではprivateなInitializeメソッドを作ってなんとかしてましたが、とってもアホだったようです。がっくし。
まぁ、これでまた一つ成長したよね!はぁ。