キーワード辞典
物凄く乱暴なデータ型とクラスとの関係

登録日 14/11/30   更新日 14/11/30



「C言語で見るデータの構造」で書いた様に、データは、 まず、あらかじめ定義されたデータ型の特徴を持つ変数が有り、 変数が1つ1つバラバラだと面倒臭いから、同じデータ型のまとまりである「配列」の考え方が生まれ、 さらに、異なるデータ型をもまとめて扱えるようにした「構造体」の考え方へ発展し、 それらのデータのまとまりと、それらのデータへの処理とをひとまとめにした「クラス」の発想へとつながっていく。

私は、乱暴に言えば、 データ型はレディメイドでハードウェア寄りな型、 クラスはオーダーメイドで多機能、人間寄りな型であると思っている。 そもそも、文字型とか、整数型とか、実数型とか、実数型でも単精度とか倍精度とか、 色々有るデータ型は、あくまでも型であって、それ自体が存在する訳では無い。 例えば、
Double a;
と書くことにより、「符号付き倍精度実数型」の変数「a」の場所が必要な語数分だけメモリ上に確保される。 Double型で宣言された変数aの値は、加減乗除などの処理の過程において、 符号付きの倍精度の実数(浮動小数点型)として処理(読み込み、書き込み、計算、正規化など)されるが、 それは、あらかじめDouble型のデータに対して定義された手続きであり、普段、プログラマが意識する必要は無い。 これは、クラスは設計図であり、クラスを実体化させることでデータに応じた処理が出来ることと考え方が似ていると思っている。
※勿論、内部構造は違っていますが。





[ 赤い玉の画像 ] 「キーワード辞典」の目次へ

[ 黒板消しとチョーク受けの画像 ]