VB基本語法

daniel112發表於2008-03-22
培訓內容:

   1. VB中的資料型別;
   2. VB中的常量與變數;
   3. VB中的運算子;
   4. VB中的流程控制語句。


   1、VB中的資料型別
      基本資料型別

比較特別的有物件型別和變體型別。Object 物件型別可以簡單的理解成為對控制元件物件的引用;Variant 變體型別可以算是VB中的特殊型別,由於它的存在常常讓人對VB的資料型別檢查產生誤解。VB在變數宣告時,如果不指定變數型別則VB就將為該變數指定為 Variant 型別。 在最常用的資料型別中,特別要注意的就是 Integer 整型,之所以要特點注意就是因為它的值域很小,在使用中可能會產生數值溢位,通常的做法是在VB中直接使用 Long 來替換全部的 Integer 。 表中可以看到有個“型別符”列,它是宣告變數型別的簡化形式。
   自定義資料型別 / 列舉型別

PPT中只簡述了型別的宣告語法,實際上這兩種型別的用處極大,通過對它們的使用可以讓你的程式更加具有有讀性和麵向物件的特點,呵呵。來看看俺的示例程式碼,從中應該可以有點感覺(在VB6中書寫列舉型別的變數時可是會有彈出提示的喲)。
自定義型別和列舉型別的使用
如果你是一位VB的新手(寫過幾段小程式),看過上面的程式碼後就應該能夠體會到這兩種型別的優勢所在。不過就培訓後的效果來看,這段程式碼對於真正的初學者是一點效果也沒有,哎...。    2、VB中的常量與變數
  • 常量,在VB中最為常見的就是VB常量;常量的最大用處就是助記(VB支援中文,但是中文程式設計也不能濫用,因此在常量中使用是比較好的選擇)
    Public   Const  單位資料表  As   String   =   " DAD6CPP "
  • 變數,變數的宣告需要注意。因為VB支援隱式宣告(就是不宣告)和宣告時省略資料型別,這兩種情況下變數並不是沒有型別,而是 Variant 型別
    Public   Sub  doSomthing()
        x 
    =   1

        
    Dim  y
        
    Dim  i1, i2, i3  As   Long

    End Sub

    這是三個例子,其中的變數 X 和 Y 都是 Variant 型別,這個比較看出,注意的是第3行宣告,這是極易出錯的地方,只有 i3 是Long,i1、i2 都是 Variant
   3、VB中的運算子
  • 連線運算子多用 & 就好,+ 對兩邊運算元會有型別要求
  • 全部的運算子沒什麼可好說的,按規矩來即可,只是要注意一點在使用運算子時多用括號比依賴記憶的效果要好
   4、VB中的流程控制語句
  • 條件語句 IF ... Then  ...  Else ... EndIF,如果是單條語句用 IIF函式 來替換也是不錯的,在使用IF語句時必須注意將 Else 寫全,這對於日後的除錯有很大的益處(當你找半天都沒能發現錯誤所在時就知道了)。
  • 分支語句 Select Case ... Case ... Case Else ... End Select,Case表示式所支援的語法非常的靈活性,這樣使得分支語句可使用的範圍非常的廣,它在特定情況下可有效改善 多IF條件 程式碼可讀性下降的問題。下面來看看對上面示例的改善過程:
    使用多條IF

    這裡的登入狀態只使用了3種狀態,可以看到 cmdOK_Click 事件中對狀態的檢查使用的是多條IF,如果狀態更多的話那麼這裡的程式碼會顯得更加的繁瑣,看看CASE能夠給我們帶來什麼。
    使用CASE分支來替換IF

    這裡的分支比較少,如果多的話優勢則更明顯。
  • 迴圈語句 For ... Next / For Each ... Next,這裡舉一個使用 For Each 語句的示例,這種形式的運用比較多:
    使用For Each遍歷
  • 迴圈語句 Do ... Loop,這個需要注意的一點就是要在適當的時候記住要能夠終止。
  • 迴圈語句中選用 For ... Next 還是 Do ... Loop 沒有特定的要求。For 更適於迴圈次數明確的情況,而 Do 適於迴圈次數不明,但終止條件瞭解的情況。