Я не пытаюсь начать аргумент здесь, но по какой-то причине в нем обычно говорится, что Visual Basic нечувствителен к регистру, а языки C - нет (и как-то это хорошо).
Но вот мой вопрос: где именно Visual Basic не чувствителен к регистру? Когда я печатаю...
Dim ss As String
Dim SS As String
... в Visual Studio 2008 или Visual Studio 2010 IDE, вторая содержит предупреждение "Локальная переменная SS
уже объявлена в текущем блоке". В VBA VBE он не сразу выдает ошибку, а просто автоматически исправляет регистр.
Я что-то здесь упускаю с этим аргументом, что Visual Basic не чувствителен к регистру? (Кроме того, если вы знаете или хотите ответить, почему это плохо?)
Почему я даже задаю этот вопрос?
Я использовал Visual Basic на многих его диалектах в течение многих лет, иногда как хобби, иногда для программ, связанных с малым бизнесом в рабочей группе. В течение последних шести месяцев я работал над большим проектом, гораздо большим, чем я ожидал. Большая часть примера исходного кода есть в С#. У меня нет особого желания изучать С#, но если есть вещи, которые я упускаю из-за того, что С# предлагает то, чего нет в Visual Basic (в противном случае VB.NET предлагает XML-литералы), тогда я бы хотел узнать больше об этой функции. Так что в этом случае часто утверждается, что языки C чувствительны к регистру, и что хорошо, а Visual Basic нечувствителен к регистру, и это плохо. Я хотел бы знать...
- Насколько точно в Visual Basic не учитывается регистр, так как каждый отдельный пример в редакторе кода становится чувствительным к регистру (то есть регистр корректируется), хочу я этого или нет.
- Достаточно ли этого для меня, чтобы рассмотреть возможность перехода на С#, если дело VB.NET каким-то образом ограничивает то, что я мог бы сделать с кодом?