常量字符串的初始话

hityct1 2010-03-24 05:25:45

const string[] DropDownListItems ={ "财政公告", "厅长文稿" };


提示错误:
编译器错误信息: CS0134: “DropDownListItems”的类型为“string[]”。只能用 null 对引用类型(字符串除外)的常量进行初始化


请问怎么解决?DropDownListItems 要在case语句中使用。
...全文
200 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq497525725 2010-03-24
  • 打赏
  • 举报
回复
楼上 真是SF 啊。
wuyq11 2010-03-24
  • 打赏
  • 举报
回复
C#只支持:
const string str= "";
const int[] int= null;
const一般是编译期间直接直接copy到引用的地方
可使用枚举
Baesky 2010-03-24
  • 打赏
  • 举报
回复
都洗洗睡吧,看来是没从C习惯该过来
const string[] DropDownListItems = new string[]{ "财政公告", "厅长文稿" };
hityct1 2010-03-24
  • 打赏
  • 举报
回复
改成if else 语句了。麻烦点。
xingyuebuyu 2010-03-24
  • 打赏
  • 举报
回复
           private void Form1_Load(object sender, EventArgs e)
{
string caseSwitch = "1";
int ii = Array.IndexOf(a, caseSwitch);
if (ii > -1)
{
MessageBox.Show("found");
}
else
{
MessageBox.Show("not found");
}
}
readonly string[] a = { "a", "b" };


这样做吧,找到就等于是执行Case后面的分支
hityct1 2010-03-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 healer_kx 的回复:]
只有这个是可行的:

C# code

class Program
{
readonly string[] a = { "a", "b" };

static void Main(string[] args)
{

const int b = 1;

……
[/Quote]

switch case 语句要求是常量值,满足不了。
我是c++学多了,有点傻了。
healer_kx 2010-03-24
  • 打赏
  • 举报
回复
只有这个是可行的:

class Program
{
readonly string[] a = { "a", "b" };

static void Main(string[] args)
{

const int b = 1;

}
}
healer_kx 2010-03-24
  • 打赏
  • 举报
回复
看这个:
http://msdn.microsoft.com/zh-tw/vstudio/ms228606.aspx

110,552

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧