Поделиться через


Ошибка компилятора C3868

"type": ограничения универсального параметра "parameter" отличаются от ограничений в объявлении

Несколько объявлений должны иметь одинаковые универсальные ограничения. Дополнительные сведения см. в статье Универсальные шаблоны.

Пример

В следующем примере возникает ошибка C3868.

// C3868.cpp
// compile with: /clr /c
interface struct I1;

generic <typename T> ref struct MyStruct;
generic <typename U> where U : I1 ref struct MyStruct;   // C3868

// OK
generic <typename T> ref struct MyStruct2;
generic <typename U> ref struct MyStruct2;

generic <typename T> where T : I1 ref struct MyStruct3;
generic <typename U> where U : I1 ref struct MyStruct3;