您好,登錄后才能下訂單哦!
本篇內容介紹了“C#的鋸齒數組怎么實現”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
原則:
1、鋸齒數組首先是二維數組,第一維的維數是確定的
2、之所以在C#中能夠出現靈活的鋸齒數組,是因為,C#的數組是引用類型(本質上存放的是指針)
根據這個引用類型(指針)的概念,C++中用指針數組同樣可以實現
C#中:
class A{}
int szA[][] = new int[3][];
szA[0] = new int[2];
szA[1] = new int[6];
szA[2] = new int[3];
當然此時實際的各個數組元素(整形變量)尚未初始化值,C#不允許使用未經初始化的變量
C++中,可以定義int *指針變量的數組,成員是三個int *指針變量,然后每個指針變量在堆內存上分配2,6,3個int變量的內存,
這樣就ok了!
實際上,就是利用了指針的概念,只是C#的語法形式上看起來簡單些,但是也失去了直接操作內存底層值的靈活性,托管,非托管,.net平臺有利有弊的。
“C#的鋸齒數組怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。