You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# 11前结构体字段需显式赋值?与C#9实际编译情况存矛盾

C#结构体字段初始化规则的实际差异

《C# 12 in a Nutshell》中提到:
在C# 11之前,结构体中的每个字段都必须在构造函数(或字段初始化器)中显式赋值。此限制现已放宽。

但实际测试发现,以下代码在.NET 5(对应C# 9)环境下可以正常编译运行,输出结果为0:

using System;

Point point = new Point();
Console.WriteLine(point.X);

struct Point
{
    public int X;
    public int Y;
}

内容的提问来源于stack exchange,提问作者FluidMechanics Potential Flows

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 07:52:01