OCaml を使用してデータ メンバを持つオブジェクトを作成したいのですが、必ずしもデータ メンバの初期値を指定する必要はありません。多くの例ではリストを使用しているように見えますが、作成したオブジェクト タイプの単一のインスタンスを使用したいと考えています。これは可能ですか?ありがとう。
class bar = object end;;
class foo =
object (self)
val myDataMember = ((* ??? *) : bar)
end;;
さらに、オプションキーワードを無駄に試しました:
class bar =
object (self)
method doIt = Printf.printf "Doing it!"
end;;
class foo bar =
object (self)
val mutable myDataMember = (None : bar option)
method get = myDataMember
end;;
let f = new foo (new bar);;
f#get#bar#doIt;;
ここで、コンパイラは、データ メンバが "bar オプション" 型を持つように指定したいときに、データ メンバが bar 型を持つように指定したいと文句を言います。