可能重复:
C# 4.0: Can I use a TimeSpan as an optional parameter with a default value?
好的,我知道如何为某些变量创建默认参数。例如,我可以创建默认参数:
public void someMethod(int x = 1, double y = 2)
{
//....
}
好吧但是让我们说我的方法需要TimeSpan类型的对象。当我尝试:
public void someMethod(TimeSpan t = TimeSpan.FromSeconds(3)){
}
我收到错误:
't'的默认参数值必须是编译时常量
因此我尝试将TimeSpan类型的常量创建为:
private const TimeSpan defaultVal = TimeSpan.FromSeconds(3);
public void someMethod(TimeSpan t = defaultVal)
{
}
这也给了我一个错误。我该如何解决这个问题?