赋值
如果从结构中创建一个对象,并将该对象赋给某个变量,则该变量包含结构的全部值。复制类型为结构的变量时,将同时复制该结构所持有的所有数据。
using System;
namespace test
{
struct Person
{
public string Name;
public string MobilePhone;
public DateTime Birthday;
}
class testStruct
{
static void Main()
{
Person p1, p2; //声明结构变量p1与p2
p1.Name = "Jim";
p1.MobilePhone = "13553663108";
p1.Birthday = DateTime.Now.AddYears(-10);
p2 = p1; //将p1的值赋给p2 //由于是值类型,因此赋值等于将全部值全部复给p2
p2.Name = "Tom"; //然后修改p2的值看是否会影响p1
Console.WriteLine(p1.Name);
}
}
}
结构是值类型,因此当它被转换为object类型时,或者它所实现的接口类型的时候,就会执行装箱操作;同样,当执行相反操作的时候,就会执行拆箱操作。