C#中如何定义const数组

in cn •  7 years ago 

首先告诉你答案:不可能!!!

😅那还写个屁啊,但有替代方案啦,哈哈。

1、为什么不可能

在C#中,const要求提供一个编译期常量。由于数组是引用类型,引用类型的编译期常量就只有null了。但显然这并不是我们想要的结果,因此这里毫无办法。

在C#中,只有byte、char、short、int、long、float、double、decimal、bool、string、enum等这些非引用类型可以定义为常量。

2、替代方案

在C#中,可以使用readonly关键字,来实现类似的功能。

如:

private static readonly double[] numbers = { 0.068, 0.076, 0.086, 0.098};

两者的初始化时间,引用方法基本一致。但readonly的功能更加强大一些,如果有兴趣的同学可以仔细看看下面引文[3]

3、引用

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!