public int compare(int x0,int x1,int x2,int x)
{
 if(x0>x) return 0; 
 if(x1>x) return 1; 
 if(x2>x) return 1; 
}怎么会报这个错,我对C#语法不是太懂,我以前用VB的,谢谢!

解决方案 »

  1.   

    如果X同时大于x0,x1,x2那么返回什么?
      

  2.   

    我也遇到过,在EXE中出错,但在DLL中不出错.
      

  3.   

    用 if elseif  else
    必须有个ELSE
    即上面条件都不符合时,返回一个值
      

  4.   

    public int compare(int x0,int x1,int x2,int x)
    {
     if(x0>x) return 0; 
     if(x1>x) return 1; 
     if(x2>x) return 1;
     return 999;以上都不满足时返回 
    }
      

  5.   

    public int compare(int x0,int x1,int x2,int x)
    {
     if(x0>x) return 0; 
     if(x1>x) return 1; 
     if(x2>x) return 2;
     return 999;以上都不满足时返回 
    }
      

  6.   

    public int compare(int x0,int x1,int x2,int x)
    {
    return (x0>x)?0:((x1>x)?1:((x2>x)?2:-1));
    }
    或public int compare(int x0,int x1,int x2,int x)
    {
     if(x0>x) return 0; 
     else if(x1>x) return 1; 
     else if(x2>x) return 2;
     else return -1;
    }
      

  7.   

    谢谢
    可我这样:也出错
    public int compare(int x0,int x1,int x2,int x)
    {
     if(x0>x) return 0; 
    }