在C# 4.0和更高版本中,是否(严格地)定义了它(在任何可能的编译器中?)当创建类的静态变量时,即分配内存时?在进入任何已创建实例的构造函数之前,是否可以确保已经分配了该类的静态变量?
请参考以下示例:
class X
{
static Vector2 v = new Vector2();
public X()
{
v.Set(1,1); // Can I be sure that memory for v is allocated here ? Always ??
}
}这被认为是好的编程实践吗?
发布于 2013-01-15 08:21:02
是的,你可以肯定这一点。你可以参考this链接。不过,我看不出这样设置向量的目的。也许您更喜欢静态构造函数,例如:
static X()
{
v.Set(1, 1);
}https://stackoverflow.com/questions/14329162
复制相似问题