unboxing

    1熱度

    1回答

    當提供一個整數(或其他值類型)作爲object裝箱時,我很確定沒有辦法使用default()(返回默認值一個給定的類型)直接返回底層盒裝默認值,這是正確的? 我寧願就在一次操作object通話,而無需如下編寫條件語句的負載: public object GetDefaultVal(object obj){ if(obj is Guid){ return default(Guid);

    0熱度

    1回答

    我有一定的難度,從Programming Language Pragmatics, by Scott C#和最近的Java版本的理解下面的部分進行自動裝箱和 拆箱操作是避免 包裝語法在很多情況下: ht.put(13, 31); int m = (Integer) ht.get(13); 這裏Java編譯器創建隱藏的Integer對象來保存值爲13和31的 ,以便它們可以作爲引用傳遞。 仍然

    2熱度

    3回答

    我正在學習從Swift中解析JSON,來自Android/Java,我使用John Sundell的Unbox來幫助我,這讓我想起了GSON。 參考:Unbox pod 我使用Realm作爲數據庫來本地存儲數據。 參考:Realm.io 很高興找到一個工作流來解析一個類與JSON並將其保存到領域。我不想有一個實現Unboxable的結構和一個實現Object(Realm)的類,因爲那麼我必須反映這

    0熱度

    1回答

    裏希特疊加,但是我不能讓在C#中的指針,所以從堆的字段副本堆棧完成(回答here)。 但是,當我這樣做 Console.WriteLine(v + ", " + (Int32)o); 所以,當我做拆箱對象的 「O」,只有指針傳遞,無副本。 「......這需要拆箱操作(但沒有複製操作)......」 (裏希特,129頁) 現在,我的問題是:當返回指針未裝箱值上堆,當它也被複制到堆棧? 感謝 P

    0熱度

    1回答

    我正在閱讀約passing by reference in C#,雖然這樣做,我讀了以下使我困惑的句子。 「當通過引用傳遞時,沒有值類型的裝箱」。 雖然我知道什麼是拳擊,我想我錯過了這句話中包含的信息的實際深度。我知道它基本上說沒有拳擊發生,當然也不拆箱,但我可以從中得出什麼其他結論?無論如何與拳擊/拆箱有關的價值/參考傳遞?

    0熱度

    1回答

    具有低於類: public abstract class FieldElementBaseCL : FormElementBaseCL { public FieldElementBaseCL(FormElementGroupBaseCL parentElement, int linkedFieldID) : base(parentElement) { Linked

    22熱度

    1回答

    爲了說明我的問題,考慮這些簡單的例子(C#): object reference = new StringBuilder(); object box = 42; object unset = null; // CASE ONE: bad reference conversions (CIL instrcution 0x74 'castclass') try { string

    3熱度

    1回答

    public static void main(String[] args) { Character x = ' '; while (x++ < 50) { int p = x; } System.out.println(x instanceof Character); } 因爲它是一元操作++。將x解包到char中,然後在執行操作

    -3熱度

    2回答

    如果Integer,Boolean等被稱爲「......拳擊」,如果它們的行爲不像可以通過「通過參考」傳遞盒裝對象並拆箱來改變它們的值,那麼它有什麼意義? 下面是我實際發現的「取消裝箱」的示例並非真正拆箱。 public static void main(String[] args) { Boolean x = true; foo(x); System.out.

    5熱度

    2回答

    拆箱發生時,將裝箱值的副本轉換爲適當的變量類型,但在堆上的裝箱副本的內存位置會發生什麼情況。 盒裝副本是否保留在該位置並覆蓋堆上的內存?