VB.NET слабого типа? с сильным шрифтом?

Я использовал C # раньше. Однако после того, как я присоединился к новой компании, мне нужно написать vb.net. Однако мне очень сложно это написать. Потому что я обнаружил, что vb.net не является строго типизированным. Это действительно не строгий? Или какие-то настройки для этого? Вот примеры.

If (Me.Check1() And Me.Check2()) Then

По моим знаниям C #, как только Me.Check1 () вернет false, Me.Check2 () не будет выполнено. Однако я был неправ. И для побитовых операций. Я должен использовать AndAlso для логических операций. Так и должно быть

If (Me.Check1() AndAlso Me.Check2()) Then

Проблема в том, что If (Me.Check1 () и Me.Check2 ()) То по-прежнему действителен и ошибки компиляции нет. Я действительно хочу знать, могу ли я проверить такие «неуместные» операции.

И , и И также - это только один из случаев.

Иногда мне нужно игнорировать случаи сравнения строк. Однако все делают ошибки. Иногда я делал это

If (String.Compare(Me.string1, Me.string2, True)) Then

. Я думаю, что все знают проблему. Это должно быть

If (String.Compare(Me.string1, Me.string2, True) = 0) Then

Однако я все еще не могу проверить такой случай во время компиляции.

Я люблю C #, потому что это помогает нам находить много проблем во время компиляции. Тем не менее, VB.NET меня очень смущает, и многие ошибки должны быть определены во время выполнения и тестирования.

Еще один пример заключается в том, что

Public Sub MySub(ByVal obj as Object)
    Console.WriteLine(obj.MyProperty)
End Sub

В vb.net этот вид утверждения все еще действителен. Почему? Почему? Почему? Кто-нибудь знает, как использовать VB. Точка зрения?

5
задан simonhamp 19 August 2010 в 01:29
поделиться