Udostępnij przez


Błąd kompilatora C3299

"member_function": nie można określić ograniczeń, są one dziedziczone z metody podstawowej

Uwagi

Podczas zastępowania funkcji składowej ogólnej nie można określić klauzul ograniczeń (powtarzanie ograniczeń oznacza, że ograniczenia nie są dziedziczone).

Klauzule ograniczeń w funkcji ogólnej, którą zastępujesz, zostaną odziedziczone.

Aby uzyskać więcej informacji, zobacz Ograniczenia dotyczące parametrów typu ogólnego (C++/CLI).

Przykład

Poniższy przykład generuje kod 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;
};