什么时候应该在C#中使用struct而不是class?我的概念模型是当项只是值类型的集合时使用结构.一种逻辑上将它们组合在一起形成一个有凝聚力的整体的方法.
我在这里遇到了这些规则:
这些规则有效吗?结构在语义上意味着什么?
C#struct是否是线程安全的?
例如,如果有:
struct Data
{
int _number;
public int Number { get { return _number; } set { _number = value; } }
public Data(int number) { _number = number; }
}
Run Code Online (Sandbox Code Playgroud)
在另一种类型:
class DadData
{
public Data TheData { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
是属性名为TheData,线程安全吗?