C# 方法中參數類型後帶問號

有的時候,我們會看到這樣的代碼,方法的參數類型後面有個?,這是什麼意思呢?
其實很簡單,我們來看個例子

這裏寫圖片描述

我們都知道 Vector3 這個類型的參數是不允許 = null 的,這裏編譯器也提示我們了,看圖中紅色的波浪線那裏。

然後我們稍稍對代碼進行一下更改來看看。

這裏寫圖片描述

對,我們在類型的後面加上一個 ? ,這個時候編譯器的錯誤提示神奇的消失了。

這時你應該看出來了吧,? 的作用就是讓我們 Vector3 類型的參數可以 = null。
雖然我們還是不能夠給它哪怕是一個 Vector3.zero 這樣的初始值,但是我們在調用方法時可以選擇不給它賦值了,然後在函數內部判斷是否 = null 來給它進行初始化。
對於代碼的整齊美觀還是很有幫助的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章