C# 中的结构体(struct)是一种用户自定义的数据类型,它具有值类型的特点。结构体适用于以下场景:
public struct Point
{
public int X;
public int Y;
}
public struct Person
{
public string Name;
public int Age;
public string Email;
}
public struct Result
{
public bool IsSuccess;
public string Message;
}
public Result GetUser(int id)
{
// ... 获取用户信息的逻辑
return new Result { IsSuccess = true, Message = "User found" };
}
public void PrintPoint(Point point)
{
Console.WriteLine($"({point.X}, {point.Y})");
}
序列化和反序列化:结构体可以很容易地进行序列化和反序列化,因此它们适用于需要将数据在网络中传输或在文件中进行存储的场景。
跨平台兼容性:结构体在内存中的布局是连续的,这使得它们在不同的平台和架构之间具有很好的兼容性。如果你需要在不同的平台上共享和传输数据,可以考虑使用结构体。
需要注意的是,结构体与类的不同之处在于,结构体是值类型,它们的默认值是零值(例如,int的默认值是0,float的默认值是0.0),而类是引用类型,它们的默认值是null。在选择使用结构体还是类时,需要根据具体的需求和场景进行权衡。