重复的问题
我可以在 C# 中为 .Net 2.0 执行此操作吗?
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
如果没有,我可以做类似的事情吗?
重复的问题
我可以在 C# 中为 .Net 2.0 执行此操作吗?
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
如果没有,我可以做类似的事情吗?
是的,假设您故意添加了 V 形并且您的真正意思是:
public void myMethod(string astring, int? anint)
anint
现在将拥有一个HasValue
属性。
取决于你想要达到什么。如果您希望能够删除anint
参数,则必须创建一个重载:
public void myMethod(string astring, int anint)
{
}
public void myMethod(string astring)
{
myMethod(astring, 0); // or some other default value for anint
}
您现在可以执行以下操作:
myMethod("boo"); // equivalent to myMethod("boo", 0);
myMethod("boo", 12);
如果您想传递一个可为空的 int,那么请参阅其他答案。;)
在 C# 2.0 中,您可以这样做;
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
并调用类似的方法
myMethod("Hello", 3);
myMethod("Hello", null);