运维开发网

c# – 将方法参数设置为只读

运维开发网 https://www.qedev.com 2020-04-30 12:12 出处:网络 作者:运维开发网整理
我如何创建一个方法,使一个对象只读目的 public class Person { public string Name; } public void RunMe(Person p) { p.Name="XXXX"; } var p =new Person(); p.Name="YYYY"; RunMe(p); Console.WriteLine(p.Name); 我正在获
我如何创建一个方法,使一个对象只读目的

public class Person 
{
    public string Name;
}

public void RunMe(Person p)
{
    p.Name="XXXX";
}

var p =new Person();
p.Name="YYYY";

RunMe(p);
Console.WriteLine(p.Name);

我正在获得XXXX.但我希望person对象不会改变它的值.

这样做的方法是通过get和set访问器,只是不要定义一个集合:

public String Name { get; }

这将使您可以将属性视为正常字段的属性.使用方法来设置支持字段,您可以在msdn上阅读有关更复杂的属性

如果您需要只能设置一次属性,那么将set定义为private并将参数传递给构造函数:

public class Person
{
  public Person(String name)
  {
     this.Name = name;
  }

  public String Name { get; private set; }
}
0

精彩评论

暂无评论...
验证码 换一张
取 消