みぃちゃんの頭の中はおもちゃ箱

略してみちゃばこ。泣いたり笑ったり

Adaのオブジェクト指向プログラミングって?

2014年08月13日 22時30分31秒 | お仕事・学び
いまどきのAdaについて勉強中。Adaはプログラミング言語Adaの こと。超マイナーな言語です。勉強と いっても あくまで趣味の領域です。

特に気に なるのがAdaでのオブジェクト指向の実装。C++では構造体を拡張することでオブジェクト指向に対応していますが、ふむふむ、Adaは かたとプロシージャや関数を分離したままなのか。だから操作対象のオブジェクトをひき数として わたさないと いけないのか。慣習として第1ひき数で わたすんだね。

コンストラクタとデストラクタが自動的に よびだされないから、オブジェクトの初期化とクリーンアップは明示的に実行しないと いけないんだ。となると、例外が発生したときに そのブロックの すべてのオブジェクトのデストラクタをわすれずに よびだすのもプログラマの責任? あ、Controlledって いう かたが あるね。これを継承すれば いいんだ。
type MyObject is new Controlled with
	record
		...
	end record;
その うえでControlledのプロシージャをオーバーライドすると いうことだ。
procedure Initialize( Obj: in out MyObject);
procedure Adjust( Obj: in out MyObject);
procedure Finalize( Obj: in out MyObject);


※ この記事の本文からは漢字の訓を排除しています。

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。