Переменные и присваивание
Имена переменных в VB.NET имеют длину до 255 символов и обычно начинаются с буквы в кодировке Unicode (за дополнительной информацией о Unicode обращайтесь на сайт www.unicode.org), хотя также допускается символ подчеркивания. Далее следует произвольная комбинация букв, цифр и символов подчеркивания. Все символы имени являются значимыми, но регистр символов игнорируется (как вообще в VB.NET); считается, что firstBase и firstbase – одна и та же переменная. Присваивание выполняется при помощи знака =, как и в более ранних версиях VB:
theYear = 2001
Примечание
В .NET Framework используются новые правила присваивания имен переменным, заметно изменившиеся по сравнению с VB6. В соответствии рекомендациями, приведенными в MSDN, применять венгерскую запись нежелательно, а значимые имена переменных (то есть не состоящие из одной буквы, как i или t) должны оформляться в альтернативной схеме выбора регистра. В прежних версиях VB обычно использовалась схема Pascal.
Имена переменных не могут совпадать с последовательностями, зарезервированными VB.NET (список для текущей версии приведен в табл. 3.1), однако это ограничение можно обойти, заключив имя переменной в квадратные скобки. Например, переменная не может называться Loop, а имя [Loop] подойдет – хотя делать это не рекомендуется. Зарезервированные слова внутри имен переменных допустимы (скажем, loopit – вполне нормальное имя). При попытке использования ключевого слова в качестве имени переменной VB.NET подчеркивает его и информирует об ошибке (при помощи экранной подсказки).
Таблица 3.1. Ключевые слова текущей версии VB.NET.
AddHandler | AddressOf | Alias | And | Ansi |
As | Assembly | Auto | Binary | BitAnd |
BitNot | BitOr | BitXor | Boolean | ByRef |
Byte | ByVal | Call | Case | Catch |
CBool | CByte | CChar | CDate | CDec |
CDbl | Char | CInt | Class | CLng |
CObj | Compare | Const | CShort | CSng |
CStr | Ctype | Date | Decimal | Declare |
Default | Delegate | Dim | Do | Double |
Each | Else | Elself | End | Enum |
Erase | Error | Event | Exit | Explicit |
ExternalSource | False | Finally | For | Friend |
Function | Get | GetType | GoTo | Handles |
If | Implements | Imports | In | Inherits |
Integer | Interface | Is | Lib | Like |
Long | Loop | Me | Mod | Module |
Mustlnherit | MustOverride | MyBase | MyClass | Namespace |
Next | New | Not | Nothing | Notlnheritable |
NotOverridable | Object | Off | On | Option |
Optional | Or | Overloads | Overridable | Overides |
Pa ram Array | Preserve | Private | Property | Protected |
Public | RaiseEvent | Readonly | Re Dim | REM |
RemoveHandler | Resume | Return | Select | Set |
Shadows | Shared | Short | Single | Static |
Step | Stop | Strict | String | Structure |
Sub | SyncLock | Text | Then | Throw |
To | True | Try | TypeOf | Unicode |
Until | When | While | With | With Events |
WriteOnly | Xor |