1
我正在處理將字符串解析爲類型的方式,而不知道它們將被解析爲哪些類型。具體的bool /整數/日期等當聲明爲動態時,原始類型是否被裝箱
我使用的是字典<類型,函數功能<字符串,動態> >做到這一點考慮,但想知道是否有將是價值的裝箱/拆箱。
我正在處理將字符串解析爲類型的方式,而不知道它們將被解析爲哪些類型。具體的bool /整數/日期等當聲明爲動態時,原始類型是否被裝箱
我使用的是字典<類型,函數功能<字符串,動態> >做到這一點考慮,但想知道是否有將是價值的裝箱/拆箱。
是的,您從funcs返回的值類型實例將被裝箱(您實際上有一個存儲Func<string, object>
的字典)。
當您調用func並嘗試將其分配給變量或將其傳遞給方法時,該值將被拆箱並存儲在相應類型的引用中。
我編輯了你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –
很高興知道,謝謝:) – Miles
@Miles * dynamic *是C#編譯器的一招。沒有*動態*類型。它被無聲地轉換爲* object *,並且編譯器知道它必須生成額外的代碼來處理「動態」部分。你可以看到它* typeof(dynamic)== typeof(object)* – xanatos