VB .NET: Как получить ссылку на строку в 2D-массиве - PullRequest
2 голосов
/ 08 июля 2011

У меня есть функция, которая возвращает 1D-массив, подобный этому:

Public Function KeyConvert([args]) As Byte()

и двухмерный массив:

Public KeyList(15, 5) As Byte

, который можно увидетькак 15 строк, каждая строка представляет собой массив из 5 элементов, как мы все уже знали.

Теперь я хочу вызвать функцию и присвоить результат (который является одномерным массивом) строке (скажем, строка 4)в массиве KeyList.Сначала я подумал, что код должен выглядеть как

Keylist(4) = KeyConvert([args])

Но это не сработало.Я не могу найти ссылку на этот конкретный ряд.

Так у кого-нибудь есть идеи?Большое спасибо

Ответы [ 2 ]

2 голосов
/ 08 июля 2011

Вам нужен массив с зубчатыми краями , а не m-d.

Что-то ближе к:

Public KeyList(15)() As Byte
0 голосов
/ 08 июля 2011

В VB.Net (или C #) отсутствует понятие «строка» (или «столбец») в двумерном массиве. Элементы массива в .Net могут быть доступны только по одному за раз.

Если вы сделаете свою переменную KeyList в виде одномерного массива из 5-элементных массивов, вы сможете использовать показанный вами синтаксис.

Если вам нужно сохранить KeyList в виде двумерного массива, чтобы вам было легче получать доступ к любой отдельной «точке» внутри него, вы можете написать метод, которому передается строка для обновления, и массив из 5 элементов, элементы должны быть скопированы, и этот метод копирует 5 значений по одному в соответствующие столбцы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...