|
|
1
14
你使用它们作为可变结构。避免这样做: |
|
|
2
6
结构具有值类型语义。因此,对结构实例所做的任何修改都不会影响原始实例。C编译器正试图警告您这一点。 |
|
|
3
5
C不会在“foreach(mystruct-ms…”)中引用迭代结构,因此在该上下文中,ms是不可变的。 将mystrut替换为类。 QuickWatch可以操作堆栈上的值类型。 |
|
|
4
1
这是因为结构是ValueType而不是引用类型。如果mystrut是一个类,它编译时就不会有问题。检查 this 线程获取详细信息。 |
|
|
5
0
您不能更改迭代变量引用的内容:也就是说,您不能将变量指向不同的实例(要找出原因,请参见 Why is The Iteration Variable in a C# foreach statement read-only? )
“modifying”结构(值类型)创建
新实例
类型,所以语句
呼叫
|