C 方法中引數型別後帶問號

2021-07-31 22:55:35 字數 523 閱讀 6225

有的時候,我們會看到這樣的**,方法的引數型別後面有個?,這是什麼意思呢?

其實很簡單,我們來看個例子

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

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

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

這時你應該看出來了吧,? 的作用就是讓我們 vector3 型別的引數可以 = null。

雖然我們還是不能夠給它哪怕是乙個 vector3.zero 這樣的初始值,但是我們在呼叫方法時可以選擇不給它賦值了,然後在函式內部判斷是否 = null 來給它進行初始化。

對於**的整齊美觀還是很有幫助的。

C 帶引數執行方法

比如 aa.exe auto aa.exe main 兩組字尾,要求分別執行aa的某個執行緒,比如aa.exe auto開啟from1,aa.exe main開啟from2 由於需要修改program的main方法,需要更加謹慎,因為乙個結構清晰的main對於後期維護是乙個很好的幫助。以下的 將解析...

C 方法中的引數型別

using system using system.collections.generic using system.linq using system.text using system.threading.tasks namespace 0207 方法中的引數型別 static void mai...

C 方法中的引數型別

二 方法中的引數型別 1.值引數 值引數是指不帶修飾符只帶資料型別的形參。值引數在使用值向方法傳遞引數時,編譯程式會把實參的值做乙份拷貝,並且將此拷貝傳遞給該方法,被呼叫的方法不會修改記憶體中實參的值。呼叫該方法時,系統會為每乙個值型別的形參分配乙個新的記憶體空間,然後將對應的實參的表示式運算的值複...