2014-11-28 2 views
0

Я преобразовываю проект из vb6.0 в vb.net ... в vb6.0 У меня есть функция, которая принимает один размерный массив, а массив используется как функция трех измерений определение, которое не поддерживается в vb.netVb 6.0 to vb.net conversion

Для например:

public sub func(ByRef a() as Short) 
short i=0 
**a(0,1,1) =i** 
End sub 

Я получаю следующее сообщение об ошибке количество индексов превышает число измерений индексированного массива

ответ

0

Изменить объявление метода к этому:

Public Sub Func(a(,,) As Short) 

Обратите внимание, что вы вообще не должны использовать ByRef ключевое слово в VB.NET для параметров, как это неявное для всех ссылочных типов (таких как массивы).

Кроме того, типичным соглашением стиля в VB.NET является использование TitleCase для всех языковых ключевых слов и методов и camelCase для полей, локалей и параметров.

(из любопытства, если вы конвертируете его вручную, почему вы решили выбрать для VB.NET вместо C#?)

+0

Привет спасибо вам ваш ответ, который он работал, я уверен, преобразование его вручную , я использовал инструмент конвертирования, даже тогда некоторые из таких вещей, как элементы управления activex и индексы массивов, например, выше, например. не конвертируются .. учитывая C# я из фона java и понятия не имею о нем – user2504636