clustMember(0, 0) = "1,2,3,4,"
clustMember(0, 1) = Nothing
clustMember(0, 2) = "5,6,7,8,9,"
clustMember(0, 3) = Nothing
clustMember(1, 0) = "1,2,3,4,"
clustMember(1, 1) = "5,6,7,8,9,"
clustMember(1, 2) = Nothing
clustMember(1, 3) = Nothing
clustMember(2, 0) = "1,2,3,4,6,9,"
clustMember(2, 1) = "5,7,8,"
clustMember(2, 2) = Nothing
clustMember(2, 3) = Nothing
clustMember(3, 0) = Nothing
clustMember(3, 1) = "1,2,3,4,5,6,8,"
clustMember(3, 2) = "7,9,"
clustMember(3, 3) = Nothing
pmax = 3
xini = 3
For i As Integer = 1 To pmax - 1
For j As Integer = 0 To xini - 1
If clustMember(i, j) <> Nothing Then
lastSolution(i, j) = clustMember(i - 1, j)
End If
Next
Next
clustMemBerからlastSolutionにデータを運ぼうとすると問題が発生します。jの値が0と1の場合は問題なく動作しますが、jの値が2の場合、値はclustMemberはlastSolutionに移動できません。コードをトレースすると、jの値が2の場合、「この式の値が正しくない可能性があります。jが宣言されていないため評価できませんでした。そのためにアクセスできない可能性があります。保護レベル。」
誰かがこの問題を解決する方法を知っていますか?
ありがとうございました
最初の問題は、i = 1
ではなくで外側のループを開始しているため、最初の4つの項目のi = 0
条件をスキップしていることですIf clustMember(i, j) <> Nothing Then
。
clustMember(0, 0) = "1,2,3,4,"
clustMember(0, 1) = Nothing
clustMember(0, 2) = "5,6,7,8,9,"
clustMember(0, 3) = Nothing
次に、最初のアイテムにいない場合は1つのアイテムにしか戻ることができないため、コードを次のように変更して、外側のループを初めて通過するかどうかを確認します。
For i As Integer = 0 To pmax - 1
For j As Integer = 0 To xini - 1
If clustMember(i, j) <> Nothing Then
If i > 0 Then
lastSolution(i, j) = clustMember(i - 1, j)
Else
lastSolution(i, j) = clustMember(i, j)
End If
End If
Next
Next
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加