2010-01-21 64 views
0

在.NET框架中,瞭解每種數據類型消耗多少內存是有用的,但它太遺憾了。有什麼辦法可以記住它嗎?如何記住.NET數據類型的存儲大小?

如果我知道例如,int數據類型佔用4個字節,它是有用的。但是,當我使用其他軟件(如SQL Server)時,這種數據特別容易遺忘,因爲內存消耗可能與.NET框架有所不同。

是否有任何的方式來記住他們,而不是看到單證的?

+1

挑逗點:我知道這只是一個例子,但int消耗4字節,而不是2. – itowlson 2010-01-21 06:59:50

+3

1字節2字符和短4 int和浮點8長和雙16位十進制。 你應該寫一首詩。 – affan 2010-01-21 07:24:26

+0

謝謝你對於int數據類型的4字節內存消耗的所有評論....我寫的只是一個例子,但我對它進行了編輯。 – odiseh 2010-01-21 08:55:24

回答

2

我不知道這樣的事情是值得consciencely記憶。我建議創建一個備忘單並根據需要參考。及時你會記住它,或者你最常使用的那個。

1

知道了基本的數據類型的大小有時是有用的,當你有與低級別結構進行操作(例如,如果你有交換從特定硬件接口與C語言或彙編程序的數據,或數據)時,或者當您必須處理大量數據並需要估計內存消耗。但是,在實踐中,你只需要處理少數幾個(少於十幾個),所以記住它們有什麼難的呢?

0

我不知道爲什麼你會發現它有用記住這些數字。你真的不需要打擾。這不像「今天回來」,當我們必須加上數據結構的大小以確保它們都在32千字節以內。

很高興我們已經超越了這一點。

+0

我已經進行了幾次採訪,其中詢問了這個問題,但是之前是託管代碼 – Perpetualcoder 2010-01-22 23:09:51

+1

-1。這些信息仍然有許多原因是有用的。寫一個XNA遊戲?處理數百萬條記錄時設計緩存高效的數據結構?設計一個二進制協議或緊湊文件格式?這是使我們的職業邊緣化的那種思想。 – 2010-01-22 23:21:37

+0

@羅伯特:對不起,但你的想法是浪費人們的時間。無論我們幾個人需要知道這些信息,都可以找出答案。 99%的人不需要知道或關心。時代已經改變。如果他們知道覆蓋層如何工作,我們不再需要詢問受訪者。 – 2010-01-22 23:33:43

1

對於基本類型,「如果這聽起來很大,它是大」 :-)。 「長」比「短」大。一個「雙」比一個「浮動」更大(浮動的東西會很輕,即相當小)。 「字節」大於「nybble」。這對小數不起作用,儘管(十進制聽起來很小,但它實際上是最大的原始類型)

事實上,double聽起來會像常規大小的兩倍,如果你認爲int是一個良好的基線,比雙倍的確是雙倍大小的整數。