簡體   English   中英

遺漏“虛空”一詞與包括“虛空”一樣嗎?

[英]Is leaving out the word Void the same as including Void?

這些都一樣嗎?

public void MyMethod() {do something}

public MyMethod() {do something}

void表示什么都不返回-因此省略此關鍵字還意味着什么都不返回嗎? 如果是這種情況,那么為什么該單詞在語言中存在-是否在其他情況下使用它?

您的第二個選項無法編譯。

C#規范要求,當沒有結果要返回時,每個方法也都返回一個類型。

通過指定訪問級別, 返回值 ,方法名稱和任何方法參數,可以在類或結構中聲明方法。 ...

正如其他人所指出的那樣,類構造函數是例外。

MSDN上的方法(C#編程指南)

始終必須為您的方法指定一個返回類型,而不管其為空還是類型。 異常包括構造函數。

您無法在C#進行第二種情況,因此無法編譯。 C# ,即使“ nothing”也應始終明確指定返回類型。

想想void是沒有返回值的占位符,同時保持語法與具有返回類型的函數/方法兼容。

第一行是public實例方法 它只能在本身不是 c的class (或struct )中稱為MyMethod

第二個示例是public實例構造函數 它可以發生在一個本身稱為MyMethod的類中(盡管這是一個class的奇怪名稱)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM