Вы можете просто вернуть значение поля hashCode () в методе hashCode ()?

Имеет смысл с точки зрения безопасности, но я предпочел бы, чтобы компилятор выдал предупреждение вместо ошибки, поскольку существует законное использование полиморфных объектов, переданных по ссылке. например,

class Derp : interfaceX
{
   int somevalue=0; //specified that this class contains somevalue by interfaceX
   public Derp(int val)
    {
    somevalue = val;
    }

}


void Foo(ref object obj){
    int result = (interfaceX)obj.somevalue;
    //do stuff to result variable... in my case data access
    obj = Activator.CreateInstance(obj.GetType(), result);
}

main()
{
   Derp x = new Derp();
   Foo(ref Derp);
}

Это не будет компилироваться, но будет ли оно работать?

13
задан Eran 24 November 2014 в 22:16
поделиться