是否可以(在C#中)对一个静态变量进行不同的声明?例如,我有一个 "static bool test = true".现在我想要一个 "static int interval",但它应该取决于测试。
if (test)
{
static int interval = 1;
}
else
{
static int interval = 5;
}
因为所有的变量都不是在方法中,而是直接在类中声明的,所以我不能使用任何这样的东西,因为它是...
先谢谢你
有两种非常相似的方法来实现这个目标。
在你的赋值中使用三元组:
class MyClass
{
static bool test = true;
static int interval = (test ? 1 : 5)
}
使用静态构造函数
class MyClass
{
static bool test = true;
static int interval;
static MyClass()
{
if(test) interval = 1;
else interval = 5;
}
}