Top > OOobbs2 > 112

OOobbs2/112 Edit

  • サマリ: クラス?構造体?、オブジェクト?メンバ?・・とか
  • 環境: Other
  • 状態: 未解決
  • 投稿者: ponkan?
  • 投稿日: 2008-06-20 (金) 19:22:57

質問 Edit

問題のコードである。

type oOo
m_x
m_y
g_data
m_data
dummy1      rem これがねぇ・・・変なのよ。
dummy2
dummy3
end type

type lg
gname
scl
dummy1
dummy2
dummy3
end type

type mda
m_lGroup      as long
m_nPenStyle   as byte
m_nPenColor   as integer
m_txt         as string
dummy1
dummy2
dummy3
end type

dim oOo as oOo
dim lg(15) as lg
dim mda as mda

Sub test79
with oOo
	.m_x = 11
	.m_y = 12
	.g_data = lg
	.m_data = mda
for i = 0 to 15
	.g_data(i).gname = "グループ" + i
	.g_data(i).scl = 100
next i
	.m_data.m_txt = " 何か?"
end with
hoOo = oOo
msgbox hoOo.g_data(3).gname + " 縮尺:" + hoOo.g_data(3).scl + hoOo.m_data.m_txt
End Sub


何が問題なのかと言うと、IDEの眼鏡(オブザーバと言うらしい)を掛けてhoOoを見ると判る。
dummy1~3を削るとメンバが変化するが、如何にも怪しいと思う。
それが、IDEの眼鏡の仕様なのかインタプリタの仕様なのかの判断に悩む。
不具合とは、口が裂けたら言うかも知れないが取敢えずは、仕様という事にしよう。

それよりも大きな問題は、このoOoとかは何と形容するべき型の変数なのかが判らない。
作った本人が言うのだから間違いない。勿論仕様書にも記載は無いが、これは何だ?
クラス?構造体?、オブジェクト?メンバ?
そもそも、hoOoへ何を渡しているのだろう?。メモリ参照?・・・
まぁ、いぃかぁ・・細かい事は。等と不貞腐れる事にする。

回答 Edit

  • オブザーバと Type は相性悪いみたいですね。Type に配列を入れてそこに構造体を入れたりするとメンバーが表示されなくなったり表示されたり・・・。定義した Type の型の配列はバグがあるんですよねぇ。i83145 とか。ReDim 出来なかったり。Global 変数にすると値が消えたり (Global 変数を Object 型で定義してあとで Type で定義した変数から叩き込むと避けられますけどね、なぜか)。 -- はにゃ? 2008-06-20 (Fri) 20:01:38
  • そう、Python とかで書けばいいんですよ。リスト操作のメソッドもあるし、dictionary とかも使えますし。 -- はにゃ? 2008-06-20 (Fri) 21:43:11
  • パイソンですか・・・、そんな事より、あの猫ビ~ンのキャラは美味そうだと思う。何故か味噌田楽を連想して食べたくなる時がある。oOobasicもイメージキャラを、誰か作ってみないものだろうかと思ったりして・・・ -- ponkan 2008-06-21 (土) 18:10:25
  • 猫ピ〜ン? OOo にはカモメがいますからねぇ。Python はパイソン。Frans ユーザー会のドキュメントでは 3D で描かれたカモメがお辞儀してたりします。OOo Python のマスコットは http://wiki.services.openoffice.org/wiki/Python のページの一番下にあるやつですね。 -- はにゃ? 2008-06-21 (Sat) 18:34:36

感想,コメント,メモ Edit



Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes