namespace CircleDome
{
    class Circle
    {
        private int radius;
        public Circle()//不点任何参数的构造方法称为默认构造方法,含义是:该方法没有定义,系统会默认自动添加该方法
        {             //如果类中已经定义了构造方法,不论事默认还是带参数的构造方法,系统都不会再自动提供默认构造方法
            radius = 10;
        }
        public Circle(int radius)//
        {
            Console.WriteLine("Circle的构造方法被调用");
            this.radius = radius;
        }
        public Circle(double radius)
        {
            Convert.ToDouble(this.radius) = radius;//这里怎转换才不会报错        }        public double Aeea()
        {
            return Math.PI * radius * radius;
        }
    }
}
下面是我在main方法里写的
namespace CircleDome
{
    class Program
    {
        static void Main(string[] args)
        {
            Circle c;
            Console.WriteLine("Circle被实例化之前");
            c = new Circle(10);//构造方法被调用
            Console.WriteLine("Circle实例化之后");
            Circle c1 = new Circle(11.5);
            double t = c1.Aeea();
            Console.WriteLine(t);            
            double b = c.Aeea();
            Console.WriteLine(b);        }
    }
}

解决方案 »

  1.   

    Convert.ToDouble(this.radius) = radius;
    =>
    radius = Convert.ToDouble(this.radius);
      

  2.   

    this.radius = (int)radius;
    如果要进行四舍五入:this.radius = (int)Math.Round(radius);
      

  3.   

    楼主,一看就是新手:
    1、Convert.ToDouble(this.radius) = radius;
         有这样的赋值语句,明显顺序写颠倒!
    2、radius
         你的私有成员和构造函数参数都用完全一样的名称,
    你不怕把自己搞糊涂,也会把编译器搞糊涂!
    public Circle(int r)//
      {
      Console.WriteLine("Circle的构造方法被调用");
      this.radius = r;
      }
      public Circle(double r)
      {
           this.radius = r;Convert.ToDouble(r) ;
     }
      

  4.   

    这。。谁给谁赋值啊。。
    这是给变量赋值:radius = Convert.ToDouble(this.radius);
      

  5.   

     Convert.ToDouble(this.radius) = radius;//这里怎转换才不会报错 }
    Convert.ToDouble(this.radius) 这个地方写变量才对啊
      

  6.   

    那this.radius不就是指当前的私有成员radius吗??怎么会搞糊涂啊啊~
      

  7.   

    我没看清楚这是谁在给谁赋值。public Circle(double radius)
    {
      Convert.ToDouble(this.radius) = radius;//这里怎转换才不会报错 
    }this.radius是本类的一个私有成员,并没有进行赋值操作。你使用Convert类对其进行操作是错误的。