Sdílet prostřednictvím


Chyba kompilátoru C2217

Atribut1 vyžaduje atribut2.

Poznámky

První atribut funkce vyžaduje druhý atribut.

Příklad

K C2217 může dojít, pokud se pokusíte vytvořit vazbu delegáta na funkci CLR, která přebírá proměnlivý počet argumentů. Pokud má funkce také přetížení pole parametrů, použijte místo toho. Následující příklad vygeneruje C2217.

// C2217.cpp
// compile with: /clr
using namespace System;
delegate void MyDel(String^, Object^, Object^, ...);   // C2217
delegate void MyDel2(String ^, array<Object ^> ^);   // OK

int main() {
   MyDel2^ wl = gcnew MyDel2(Console::WriteLine);
   array<Object ^ > ^ x = gcnew array<Object ^>(2);
   x[0] = safe_cast<Object^>(0);
   x[1] = safe_cast<Object^>(1);

   // wl("{0}, {1}", 0, 1);
   wl("{0}, {1}", x);
}