Cra*_*Ste 5 .net c# code-analysis static-variables variable-assignment
我需要一个默认值集和许多不同的页面访问和更新..最初我可以像这样在类构造函数中设置默认值吗?在C#.NET中执行此操作的正确方法是什么?
public class ProfitVals
{
private static double _hiprofit;
public static Double HiProfit
{
get { return _hiprofit; }
set { _hiprofit = value; }
}
// assign default value
HiProfit = 0.09;
}
Run Code Online (Sandbox Code Playgroud)
您可以将它放在声明中:private static double _hiprofit = 0.09;
或者如果它是一个更复杂的初始化,您可以在静态构造函数中执行它:
private static double _hiprofit;
static ProfitVals()
{
_hiprofit = 0.09;
}
Run Code Online (Sandbox Code Playgroud)
前者是首选,因为后者支付性能损失:http://blogs.msdn.com/b/brada/archive/2004/04/17/115300.aspx
不,你必须使用一个实际的静态构造函数来包含属性的赋值,如下所示:
class ProfitVals
{
public static double HiProfit { ... }
static ProfitVals() // static ctor
{
HiProfit = 0.09;
}
}
Run Code Online (Sandbox Code Playgroud)
注意:静态构造函数不能声明为private/public且不能有参数.