首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这个class占几多内存。

2013-04-09 
这个class占多少内存。。。public classMyClass{byte b1byte b2byte b3byte b4Point p1Point p2Point p

这个class占多少内存。。。


    public class  MyClass
    {
        byte b1;
        byte b2;
        byte b3;
        byte b4;
        Point p1;
        Point p2;
        Point p3;
        Point p4;
    }
    public struct Point
    {
        byte x;
        byte y;
        byte z;
    }

[解决办法]
取决于对齐方式。
数据本身最少16字节。

如果是类(class),每个实例还有另外8个字节(引用块和同步块)的额外开销。
[解决办法]
不会,学习,帮你顶顶
[解决办法]
引用:
引用:

取决于对齐方式。
数据本身最少16字节。

如果是类(class),每个实例还有另外8个字节(引用块和同步块)的额外开销。

那单单那个point是多少呢?12还是4?
还是那个问题,取决于你是怎么对齐的.
[解决办法]
lz搜索一下StructLayout、FieldOffset吧,讲的比较清楚。

引用:
引用:
.......
还是那个问题,取决于你是怎么对齐的.

point默认是按声明顺序布局,3个字段都是byte类型,都不够4byte大小。我迷惑的是CLR怎么对齐这三个字段,是没一个单独加3个byte对齐还是先把这3个字段和一块再加一个byte对齐呢?

[解决办法]
我是觉得,占用多少内存,有很大关系么??还是抓紧把程序编好才是正经

热点排行