W.I.S. Laboratory
menu-bar

C#


C#で動的ポリモーフィズムをしてみる

C#は名前からしてC系の言語だと思われがちだが、CPUのネイティブコードではなくJavaのように仮想マシン用の中間コードにコンパイルされるので、実行にはランタイムがいる。
またファイルスコープに関数を置くことはできない。(CやC++は可能)
MainメソッドはPublicなクラス内にstaticメソッドとして置く必要があり、このあたりはJavaに似ている。
メソッドのオーバーライドは、される側に「virtual」を、する側に「override」を付ける。
C++とDが混ざったような書き方で、間違いは起きにくいがやや面倒。
ちなみにC#にも構造体(struct)があり、これもクラスと同じくnewできる。
ただこのときの仕様がC++と違っていて、newしているのにスタック上にインスタンスが生成されるので、これを知らないと結構ハマる。


[ 戻る ]
saluteweb