有没有办法检查 C# 中类的大小?
我问的原因是:
我有一个将类的数据存储在文件中的例程,以及一个从同一个文件加载该对象(类)的不同例程。每个属性都以特定顺序存储,如果您更改此类,则必须提醒您这些导出/导入例程需要更改。
C++ 中的一个示例(无论这可能是多么笨拙或糟糕的编程)如下:
#define PERSON_CLASS_SIZE 8
class Person
{
char *firstName;
}
...
bool ExportPerson(Person p)
{
if (sizeof(Person) != PERSON_CLASS_SIZE )
{
CatastrophicAlert("You have changed the Person class and not fixed this export routine!")
}
}
因此,在编译之前,您需要知道 Person 的大小,并相应地修改具有此大小的导出/导入例程。
有没有办法在 C# 中做类似的事情,或者是否有其他方法可以“确保”不同的开发人员在更改类时更改导入/导出例程。
...除了明显的“只在课堂上评论这个,这可以保证开发人员永远不会搞砸” - 答案。
提前致谢。