显然,在 Xbox 上使用时,可选参数在 C# Xna 中不起作用,在编译期间声明了不支持。
我有这样的情况:
func(float? a = null, int? b = null)
使用大量默认为“未定义”值的这些可选参数,null。这种情况是必需的。
在上面的简化示例中,这可以展开,尽管这不是可选参数所允许的:
func()
func(float? a)
func(int? b)
func(float? a, int? b)
但是,对于大量参数,这是不切实际的。
某些参数定义的组合是不允许的,并导致通过函数的路径我抛出参数异常,其他的导致根据参数的值发生各种不同的事情。这类似于同名但不相同的函数之间的多态性。
我可以替代地并且可能最实际地要求所有参数。
func(float? a, int? b)
然后这样调用:
func(null, 4)
第一个是未定义的。
有没有办法在 Xbox 上的 C# XNA 中启用可选参数,而不是使用上述任何一种方法?