List存储结构体的赋值问题

前几天在写代码的过程中发现,用List存储结构体赋值失败;

struct Member
{
   public string name;
   public int id;
}

List memberList=new List();

//memberList从外部读取后对某个进行修改

memberList[0].name="xiaoming";//赋值失败!!

//先取出,再赋值
Member mem=memberList[0];
memb.name="lisi";
memberList[0]=mem;

struct为值类型,按值传递,若Member为class类型,则可以直接使用list索引方式赋值;

 

你可能感兴趣的:(C#)