chechy(chechy)说得对!
在C#中是没有缺省参数的,通过重载来实现。

解决方案 »

  1.   

    C#没有这种能力,重载等于把一样的代码写两遍,还不如勤快一点,不用缺省参数。
    不过VB.net有这种能力,如果大家想偷懒,就用VB吧
      

  2.   

    其实VB不就是这样做的,而且做得不错。假设有
    Sub MySub(A As Integer, Optional B As Integer = 0)
    Sub MySub(A As Integer)
    编译器就会报错。你说的乱七八糟的情况是什么?
      

  3.   

    Sub MySub(A As Integer, Optional B As Integer = 0)
    Sub MySub(A As Integer)
    意思是:
    假如你上面的编译不出错,
    那样你说MuSub(33)到底是调用哪个呢?
    所以不应该有默认!