public void Func1()
 {
     Derived2 d = new Derived2();
     Derived2 d2 = d.Clone() as Derived2;
     if (d2 == null)
     {
         Console.WriteLine("null");
     }
 }
 public object Clone()
 {
     Derived2 rVal = new Derived2(this);
     return rVal;
 }
 private Derived2(Derived2 right)
     : base(right)
 {
     _dValues = right._dValues.Clone() as double[];
 }