溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

VB.NET Main過程中的四種聲明方法分別是什么

發(fā)布時(shí)間:2021-10-27 17:40:38 來源:億速云 閱讀:150 作者:柒染 欄目:編程語言

本篇文章為大家展示了VB.NET Main過程中的四種聲明方法分別是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

VB.NET編程語言的應(yīng)用范圍非常廣泛,其編寫方式的特殊性極大的吸引了編程人員的眼光。在學(xué)習(xí)這一語言的時(shí)候,我們會遇到有關(guān)VB.NET Main過程的相關(guān)概念,那么如何才能正確理解這一過程的聲明呢?大家可以在這里找到一些答案。


每個 Visual Basic 應(yīng)用程序均必須包含一個稱為VB.NET Main過程。該過程為應(yīng)用程序的起始點(diǎn)并為應(yīng)用程序提供總體控制。.NET Framework 在已加載應(yīng)用程序并準(zhǔn)備將控制傳遞給它時(shí),將調(diào)用 Main 過程。除非您要創(chuàng)建 Windows 窗體應(yīng)用程序,否則就必須為自運(yùn)行的應(yīng)用程序編寫 Main 過程。

Main 中包含首先運(yùn)行的代碼。在 Main 中,可以確定在程序啟動時(shí)首先加載的窗體,確定系統(tǒng)上是否已在運(yùn)行您的應(yīng)用程序副本,為應(yīng)用程序建立一組變量,或者打開應(yīng)用程序需要的數(shù)據(jù)庫。

VB.NET Main過程的要求

獨(dú)立運(yùn)行的文件(擴(kuò)展名通常為 .exe)必須包含 Main 過程。庫(例如,擴(kuò)展名為 .dll)不獨(dú)立運(yùn)行,因而不需要 Main 過程。可以創(chuàng)建的不同類型的項(xiàng)目的要求如下:

控制臺應(yīng)用程序可以獨(dú)立運(yùn)行,而且您必須提供至少一個 Main 過程。

Windows 窗體應(yīng)用程序可以獨(dú)立運(yùn)行。但是,Visual Basic 編譯器會在此類應(yīng)用程序中自動生成一個 Main 過程,因而您不需要編寫此過程。

類庫不需要 Main 過程。這些類庫包括 Windows 控件庫和 Web 控件庫。作為類庫部署 Web 應(yīng)用程序。

聲明VB.NET Main過程

有四種方法可以聲明 Main 過程。它可以使用參數(shù)或不使用參數(shù),可以返回值或不返回值。

注意

如果在類中聲明 Main 過程,則必須使用 Shared 關(guān)鍵字。在模塊中,Main 不必是 Shared。

最簡單的方法是聲明一個不使用參數(shù)或不返回值的 Sub 過程。

  1. Module mainModule  

  2. Sub Main()  

  3. MsgBox("The Main procedure 
    is starting the application.")  

  4. ' Insert call to appropriate
     starting place in your code.  

  5. MsgBox("The application 
    is terminating.")  

  6. End Sub  

  7. End ModuleMain 

還可以返回一個 Integer 值,操作系統(tǒng)將其作為程序的退出代碼。其他程序可以通過檢查 Windows ERRORLEVEL 值來測試該代碼。若要返回退出代碼,必須將VB.NET Main過程聲明為 Function 過程而不是 Sub 過程。

  1. Module mainModule  

  2. Function Main() As Integer  

  3. MsgBox("The Main procedure 
    is starting the application.")  

  4. Dim returnValue As Integer = 0 

  5. ' Insert call to appropriate 
    starting place in your code.  

  6. ' On return, assign appropriate 
    value to returnValue.  

  7. ' 0 usually means successful 
    completion.  

  8. MsgBox("The application is 
    terminating with error level " _  

  9. & CStr(returnValue) & ".")  

  10. Return returnValue  

  11. End Function  

  12. End ModuleMain 

還可以采用一個 String 數(shù)組作為參數(shù)。數(shù)組中的每個字符串均包含一個用于調(diào)用程序的命令行參數(shù)。您可以根據(jù)它們的值采取不同的操作。

  1. Module mainModule  

  2. Function Main(ByVal cmdArgs() 
    As String) As Integer  

  3. MsgBox("The Main procedure is 
    starting the application.")  

  4. Dim returnValue As Integer = 0 

  5. ' See if there are any arguments.  

  6. If cmdArgs.Length > 0 Then  

  7. For argNum As Integer = 0 To 
    UBound(cmdArgs, 1)  

  8. ' Insert code to examine cmdArgs
    (argNum) and take  

  9. ' appropriate action based on its value.  

  10. Next argNum  

  11. End If  

  12. ' Insert call to appropriate starting 
    place in your code.  

  13. ' On return, assign appropriate 
    value to returnValue.  

  14. ' 0 usually means successful completion.  

  15. MsgBox("The application is 
    terminating with error level " _  

  16. & CStr(returnValue) & ".")  

  17. Return returnValue  

  18. End Function  

  19. End Module 

可以聲明VB.NET Main過程來檢查命令行參數(shù)而不返回退出代碼,如下所示。

  1. Module mainModule  

  2. Sub Main(ByVal cmdArgs() As String)  

  3. MsgBox("The Main procedure is 
    starting the application.")  

  4. Dim returnValue As Integer = 0 

  5. ' See if there are any arguments.  

  6. If cmdArgs.Length > 0 Then  

  7. For argNum As Integer = 0 To 
    UBound(cmdArgs, 1)  

  8. ' Insert code to examine cmdArgs
    (argNum) and take  

  9. ' appropriate action based on its value.  

  10. Next argNum  

  11. End If  

  12. ' Insert call to appropriate 
    starting place in your code.  

  13. MsgBox("The application is 
    terminating."  

  14. End Sub  

  15. End Module 

上述內(nèi)容就是VB.NET Main過程中的四種聲明方法分別是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI