C#属性与索引器怎样设置默认值

avatar
作者
筋斗云
阅读量:0

在C#中,属性(Property)和索引器(Indexer)都不能直接设置默认值。但是,你可以通过以下方法实现类似的效果:

  1. 对于属性,你可以在类的内部使用一个私有的静态字段来存储默认值,然后在属性的get和set方法中使用这个默认值。这样,当你不显式地为属性赋值时,它将使用默认值。
public class MyClass {     private static int _defaultValue = 0;      public int MyProperty     {         get { return _defaultValue; }         set { _defaultValue = value; }     } } 
  1. 对于索引器,你可以使用一个私有的静态字段来存储默认值,然后在索引器的get和set方法中使用这个默认值。这样,当你不显式地为索引器赋值时,它将使用默认值。
public class MyClass {     private static int[] _defaultValues = new int[10];      public int this[int index]     {         get { return _defaultValues[index]; }         set { _defaultValues[index] = value; }     } } 

请注意,这种方法并不是真正的设置默认值,而是在获取属性或索引器值时提供一个默认值。如果你需要在创建类的实例时设置默认值,你可以在构造函数中进行设置。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!