通常結構體不能進行鍊式調用,因為傳回值是一個新的值,需要賦回原值。但現在通過ref關鍵字配合擴充方法,也能進行鍊式調用了。
結構體:
執行測試:
那麼借助c#新的ref關鍵字,我們可以引用傳回結構:
但是編譯器不能通過,沒關系,可以通過擴充方法實作。
擴充方法實作ref傳回:
結構:
擴充方法:
調用測試:
可見,結果正确。并且使用ref,函數傳回時不會建立新的結構體。
通常結構體不能進行鍊式調用,因為傳回值是一個新的值,需要賦回原值。但現在通過ref關鍵字配合擴充方法,也能進行鍊式調用了。
結構體:
執行測試:
那麼借助c#新的ref關鍵字,我們可以引用傳回結構:
但是編譯器不能通過,沒關系,可以通過擴充方法實作。
擴充方法實作ref傳回:
結構:
擴充方法:
調用測試:
可見,結果正确。并且使用ref,函數傳回時不會建立新的結構體。