- ベストアンサー
構造体配列の一部初期化!!!
はじめまして@ 今、下のような構造体があるとします。 ----------------------------------------------- Type TableColumn sName As String sKana As String End Type Type a_2 C(100) as TableColumn End Type Type a_1 B(3) as a_2 End Type global A(5) as a_1 ----------------------------------------------- ちなみに図で表すとこんな感じです。 A(5) |-B(3) |-C(100) |-sName |-sKana このとき、この構造体の配列を初期化するときは普通でしたら、 Erase A とやることによってすべての配列の中身が初期化されると思うのですが、 今回は一部を消去したいのです。 たとえば、A(0).B(0)以下の中身は初期化しないで、A(0).B(1)以下は初期化する、といった感じです。 何か良い方法がありましたらぜひご教授お願いいたします。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> A(0).B(0)以下の中身は初期化しないで、A(0).B(1)以下は初期化する Dim nul as a_2 for i=1 to 3 a(0).b(i)=nul next または dim bak as a_2 bak = a(0).b(0) erase a(0).b a(0).b(0)=bak でしょうか
その他の回答 (1)
- TAGOSAKU7
- ベストアンサー率65% (276/422)
Type TableColumn sName As String sKana As String End Type という事で、固定長でない文字列を含んだ文字列の初期化は、Todo兄ぃの回答しかないと思います。 固定長なら、他にもあるけど・・・
お礼
回答ありがとうございます☆ 固定長なら他にもあるのですか?? う~ん、奥が深いですね@@@@ 今回はどうもありがとうございましたm(><)m
お礼
即日な回答ありがとうございます☆ 今回の質問事項はプログラム中何度も使用する部分でしたので、 ご意見を参考に関数化して使用させていただきます。 本当に助かりました。 ありがとうございましたm(^^)m