Lasst uns sagen, dass ich dieses:auf generische abstrakte Klasse Casting zeigt T als ungelöst Symbol
public abstract class myClass<T> : Ob<T> where T : Ob<T>, new()
Jetzt in einem Verfahren innerhalb abstrakten myClass definiert, erstelle ich ein Objekt der Klasse myType und auf ein Verfahren innerhalb myType definiert , Übergebe ich die abstrakte Klasse myClass, die sie aufruft.
Also in meiner myType Klasse, ich habe:
public void myMethod(object caller)
Meine Frage ist, wie kann ich Objekt Anrufer auf die Art der abstrakten Klasse geworfen, die sie aufgerufen?
Ich versuchte
(myClass<T>)
und
(myClass)
aber beide gescheitert.
Generika machen meinen Kopf verletzt.
Nebenbei bemerkt, gibt es einen Grund, warum Sie eine "rekursive" Ob haben, wo T: Ob ? Ich bin daran interessiert, einen guten Grund dafür zu kennen. –
Mank
erbte ich diesen Code und versuchte, dass mich :-) – Matt