1

VB.Netを使用して、次のイディオムに対処するためのベストプラクティスを探しています。

For i as Integer = 0 To o1.Count - 1
  o1(i).x = o2(i).x
Next

私が本当に望んでいるのは、VB.Netが提供していないものです。ForEachステートメントの追加の同時イテレーターです。

For Each m1 As c1 In o1, m2 As c2 In o2
  m1.x = m2.x
Next

Linqと非Linqの両方の推奨事項、コピーメソッドの設計に関するコメント、C#または他の言語との比較に興味があります。

4

3 に答える 3

0

あなたの実際の状況はあなたが示した例よりも複雑だと思いますが、あなたがしているのがアイテムのリスト全体をあるリストから別のリストにコピーしようとしているだけなら、言及する価値があると思いました単に次のようなことをしてください:

Dim list2 = New List(Of Object)(list1)
于 2012-06-04T13:56:15.627 に答える
0

For Each ステートメントを拡張して追加の同時反復子を実装するように要求を送信しました。

http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2923571-allow-additional-clauses-on-for-each-similar-to-c-

私はまだ他のソリューションに興味がありますが、それまではこれが答えです。

于 2012-06-13T15:26:42.737 に答える
0

あなたがこれで何をしようとしているのか、私には完全にはわかりません。問題についてもう少し詳しく説明していただければ、おそらくより適切なサポートが得られるでしょう。

両方のリストが同じタイプの場合、一方のリストをもう一方のリストに追加してから、1 つのリストだけで for each を使用できます。

于 2012-06-04T16:31:52.483 に答える