2012-11-12 13 views
7

Quanta memoria in byte fare tipi come int, bool, float, double, decimal, object, e string uso, quando aggiunto come un campo a un'istanza di una classe?Quanti byte di memoria consumano ogni tipo in .NET (ambiente a 32 bit)?

+1

che dipende da molte cose come la versione di .NET e bitness (32 rispetto a 64 bit) ... il layout di memoria esatta di solito è sconosciuto prima fase di esecuzione! Per dati approssimativi è possibile controllare [MSDN] (http://msdn.microsoft.com/en-us/library/eahchzkf%28v=vs.100%29.aspx). – Yahia

+0

@Yahia in realtà 32 bit contro 64 bit non importa. Byte sarà byte, Int32 sarà Int32 ecc. –

+0

@JohnDemetriou hai una fonte per eseguire il backup della richiesta? – user1306322

risposta

10

This page mostra la dimensione di ogni tipo di dati in bit (dividere per 8 per ottenere bytes):

 
byte 8 
sbyte 8 
int 32 
uint 32 
short 16 
ushort 16 
etc... 

Oggetto e stringa sono tipi di riferimento. I tipi di riferimento occupano almeno la dimensione di tutti i campi che contengono oltre alle dimensioni del riferimento stesso.

correlati

+0

Penso che hai dimenticato di menzionare che i numeri rappresentano bit e non byte –

Problemi correlati