![]() |
1
10
根据 specification link 佩瑟拉尔在评论中提供:
(强调我的)。
这意味着当您声明
根据 Using Structs (C# Programming Guide) 页码:
因为结构是值类型,
所以这行代码
|
![]() |
2
4
这可能是因为 做 有一个默认构造函数,结构实际上没有。 为什么类数组需要初始化
类创建对象,然后返回引用实际变量是对该值的引用。默认值始终为零,因此引用的默认值为
因此,类数组的默认值都是空引用。 为什么结构数组不需要另一方面,结构都是按值计算的。它们也没有默认的无参数构造函数,而且C不允许您创建一个构造函数(尽管CLR是这样做的)由于没有构造函数,CLR能够非常有效地通过将所有值归零来创建结构,而无需调用构造函数。 你可以查看更多关于为什么这是从 this StackOverflow问题。 |
![]() |
3
2
初始化数组时, 将默认值分配给其元素 :
所以,基本上,当初始化数组时
|
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 5 月前 |
![]() |
bairog · 从按属性筛选的对象数组字典中创建值数组 5 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 5 月前 |
![]() |
Geremia · 2D NumPy数组+1D数组? 5 月前 |
![]() |
MARTIN · 交换第一个和最后一个单词,反转所有中间的字符 6 月前 |
![]() |
Paul Williams · 迭代数组时输出有问题 6 月前 |