Ошибка компилятора C3299
"функция-член": невозможно указать ограничения, они унаследованы из базового метода
При переопределении универсальной функции-члена нельзя указать предложения ограничений (при повторении ограничений подразумевается, что они не наследуются).
В этом случае наследуются предложения ограничений, содержащиеся в переопределяемой универсальной функции.
Дополнительные сведения см. в статье Constraints on Generic Type Parameters (C++/CLI) (Ограничения, применяемые к параметрам универсальных типов (C++/CLI)).
Пример
Следующий пример приводит к возникновению ошибки 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;
};