Errore del compilatore C3299
'member_function': impossibile specificare vincoli poiché vengono ereditati dal metodo base
Quando si esegue l'override di una funzione membro generica, non è possibile specificare clausole vincolo (la ripetizione dei vincoli implica che i vincoli non vengano ereditati).
Le clausole vincolo sulla funzione generica di cui si esegue l'override verranno ereditate.
Per altre informazioni, vedere Vincoli su parametri di tipo generico (C++/CLI).
Esempio
L'esempio seguente genera l'errore C3299.
// C3299.cpp
// compile with: /clr /c
public ref struct R {
generic<class T>
where T : R
virtual void f();
};
public ref struct S : R {
generic<class T>
where T : R // C3299
virtual void f() override;
};