- - PR -
【VB.NET】構造体の値の設定方法
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-02-02 22:16
いつもお世話になっています!
Structure Mypoint Dim a1 As int Dim a2 As int Dim a3 As int End Structure というの構造体があって それぞれの値を Dim xxx As Mypoint xxx.a=1 xxx.b=2 xxx.c=3 ではなく Dim xxx As Mypoint For Input=1 to 3 xxx.a(Input)=Input Next のような感じで設定することはできないでしょうか? | ||||||||
|
投稿日時: 2006-02-02 22:42
↑では当然ダメだんですよね。。。 | ||||||||
|
投稿日時: 2006-02-03 01:08
リフレクションなどを使えばできるにはできますが、 そういう反復するものは普通コレクションでやります。 構造体で冗長なフィールドを持つ利点はないです。
Integer 型なのか独自の型なのか微妙ですね。(^-^;) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-02-03 01:12
そもそも、コンパイルが通りませんからダメですね。 構造体で初期化はできません。 初期化子を含めたりサイズを指定することはできません。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-02-03 07:57
じゃんぬねっとさん、PoohKidさん
ありがとうございます。 リフレクションってどのように設定すればいいのでしょうか? 難しくてよく分かりません。すいません・・・。 補足 実際は反復ではありません。 あと変数もInteger型です。 | ||||||||
|
投稿日時: 2006-02-03 09:34
名前がわからない、順番しか情報がないのであるならば危険です。 というより、元々リフレクションは、お勧めできたものではありません。
名前は反復でなくとも、上から順番に「何番目だからコレ」とアクセスしたいわけですよね? 残念ながら、構造体のメンバの順番は "通常は" 保証されないんですよ。 で、こういうインデクサの実装は普通はコレクションでやります。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |
1