c# - 如何计算结构或类有多大?

标签 c# .net class struct

有人告诉我,我应该只使用小于 16 字节的结构。如果更大,使用类会更优化。

我在想,我该如何解决这个问题?

我是否只是将结构中的所有字段相加?

例如,如果这个结构

public struct Struct1
{
    int int1;
}

那么给定一个整数,一个int是32位,那么是不是4个字节呢?

如果我在这个结构中有很多方法怎么办?该方法会增加结构的大小吗?

最佳答案

只有非静态变量会占用空间,方法不会。例如,您在那里制作的结构有四个字节大,因为它是一个 int 的大小。

您还可以使用 Marshal.SizeOf(GetType((Struct1)) 计算大小.

除非您有内存关键型应用程序,或者有一些特殊原因需要结构,否则我建议始终使用类。

关于c# - 如何计算结构或类有多大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5338554/

相关文章:

java - 我需要帮助将绘画组件添加到类中的框架

全局对象中定义的类中的 Javascript 静态方法

c# - N-S 和 E-W 格式的纬度/经度正则表达式

c# - LINQ - 'The type of one of the expressions in the join clause is incorrect. Type inference failed in the call to ' GroupJoin'。

.net - 为什么我从异常创建的堆栈跟踪中找不到行号?

c# - 哪种类库适用于 Universal 和 Winform 项目?

python - 如何在 Python 的类中创建列表或集合对象?

c# - 如果从除我的系统之外的任何系统发布,带有代码签名证书的 Clickonce 应用程序将被组策略阻止

c# - 在 C# 中,我应该按值传递参数并返回相同的变量,还是按引用传递?

c# - 什么决定了 NavigationCommands.BrowseBack 是否调用页面构造函数?