在C#中定义常量

时间:2018-03-06 13:32:12

标签: c# c++ const

我是C / C ++开发人员。

我需要做类似下面的事情,

(function($){
    setInterval(() => {
        $.each($('iframe'), (arr,x) => {
            let src = $(x).attr('src');
            if (src && src.match(/(ads-iframe)|(disqusads)/gi)) {
                $(x).remove();
            }
        });
    }, 300);
})(jQuery);

由于C#不支持#define LEN 20 int data[LEN]; ,许多论坛建议声明#define变量。 const变量可能对我有帮助,但不适用于以上。

const

那么,我如何使用常量来表示数组?

4 个答案:

答案 0 :(得分:1)

实际上你应该用它来实现数组的实例化:

const int LEN = 20;
int[] data = new int[LEN];

答案 1 :(得分:1)

C#允许您创建几个内置类型using const keyword的常量。

  

常量可以是数字,布尔值,字符串或空引用。

这是一个小例子:

public class Demo {

    public const int Length = 20;

    public void Main(string[] args) {
        var data = new int[Length];
        for (var i = 0 ; i != Length ; i++) {
            data[i] = 2*i + 3;
        }
    }

}

注意: C# naming guidelines建议避免全部大写命名。

答案 2 :(得分:0)

你可以做这样的事情

static readonly int LEN = 20;

static void Main(string[] args)
{    
   int[] data = new int[LEN];
   for (int a = 0; a < LEN; a++)
   {
        int x = data[LEN];
   }
 }

请注意,该日期数组将默认初始化为0。

另外,System.IndexOutOfRangeException会得到int x = data[LEN];,因为你要求的是第20个索引而且数组中没有这样的索引

答案 3 :(得分:-1)

您不应该使用常量来声明数组长度。此外,C#中有许多数据结构允许您拥有动态大小的数组/列表/字典...