VB. Net Код группировки отступов с двоеточием: - PullRequest
1 голос
/ 19 апреля 2020

Итак, в коде, над которым я сейчас работаю, мой предшественник написал эти странные двоеточия перед некоторыми элементами группового блока в VB. Net Формы. Это выглядит так:

myGroupBox.Text = "MyGroupBox"
myGroupBox.Bounds = New Rectangle( ... )
: firstGrpBxElement.Text = "First"
: firstGrpBxElement.Bounds = New Rectangle( ... )
: scndGrpBxElement.Text = "Second"
: scndGrpBxElement.Bounds = New Rectangle( ... )
: thirdGrpBxElement.Text = "Third"
: thirdGrpBxElement.Bounds = New Rectangle( ... )
myGroupBox.Height = thirdGrpBxElement.Bottom + Padding

... где = New Rectangle( ... ) означает правильные прямоугольники. ... просто для облегчения чтения (и я полагаю, что в этом случае координаты не важны).

Что означают эти двоеточия? Это только для удобства чтения или я должен их использовать? Поскольку в контексте, который я до сих пор понимал, кажется, что IntelliSense удаляет их, как только я добавляю их в код вручную (я добавил код между ними). ​​

Я не смог ничего найти в Google (возможно, потому что я не знаю, как они называются), поэтому любая помощь будет оценена. Спасибо!

1 Ответ

1 голос
/ 19 апреля 2020

Двоеточия могут использоваться в VB. NET для объединения операторов в одной строке.

Например, это допустимо:

Dim a = 1 : Dim b = 2

и совпадает с

Dim a = 1
Dim b = 2

Возможно, ранее использовался такой код, как

If a = 1 Then b = 2 : c = 3

Это "сохраняет" блок If..End If, поэтому идентично

If a = 1 Then
    b = 2
    c = 3
End If

Учитывая, что операторы, которые у вас есть, будут означать, что первый оператор пуст, двоеточие избыточно и, следовательно, удаляется IntelliSense.

Я бы в любом случае избегал этих конкатенаций, поскольку они значительно снижают читаемость.

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