Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Type '<typename>' cannot inherit from a type nested within it
Una definizione di classe o interfaccia include un'Istruzione Inherits che specifica un tipo nidificato al suo interno.
L'ereditarietà deve essere lineare non circolare. Un tipo non può ereditare da un tipo che eredita da esso.
Una restrizione correlata è una relazione in cui un tipo non può ereditare da un tipo non ancora definito. L'eredità presuppone la capacità di riutilizzare membri della classe base, che a sua volta richiede la definizione di questi membri. Pertanto in Visual Basic non è possibile compilare il codice come l'esempio seguente.
Public Class outerClass
' The following statement is INVALID because innerClass is not defined.
Inherits innerClass
Public Class innerClass
Public Sub doSomething()
End Sub
End Class
End Class
ID errore: BC30908
Per correggere l'errore
Se il tipo che eredita (il tipo esterno nella nidificazione) deve ereditare dal tipo interno, spostare il tipo interno all'esterno di quello esterno.
Se il tipo interno deve essere nidificato all'interno di quello esterno, il tipo esterno non potrà ereditare da quello interno. Rimuovere l'Istruzione Inherits.