C# 浅拷贝对值类型拷贝,对于引用类型只是添加引用
static void Main(string[] args)
{
person a1 = new person { age=0,name="0"};
person a2 = new person { age=1,name="1"};
person a3 = new person { age=2,name="2"};
person[] a = new person[3] { a1,a2,a3};
person[] b = (person[])a.Clone();
b[0].age = 4;
b[0].name = "4";
foreach (person item in a)
{
Console.WriteLine($"age is {item.age}, name is"+item.name);
}
foreach (person item in b)
{
Console.WriteLine($"age is {item.age}, name is" + item.name);
}
Console.WriteLine("yuan!");
}
class person
{
public int age { get; set; }
public string name { get; set; }
}
static void Main(string[] args)
{
person a1 = new person { age=0,name="0"};
person a2 = new person { age=1,name="1"};
person a3 = new person { age=2,name="2"};
person[] a = new person[3] { a1,a2,a3};
person[] b = (person[])a.Clone();
b[0].age = 4;
b[0].name = "4";
foreach (person item in a)
{
Console.WriteLine($"age is {item.age}, name is"+item.name);
}
foreach (person item in b)
{
Console.WriteLine($"age is {item.age}, name is" + item.name);
}
Console.WriteLine("yuan!");
}
struct person
{
public int age { get; set; }
public string name { get; set; }
}