Freigeben über


Compilerwarnung (Ebene 4) C4564

methode 'method' der Klasse 'class' definiert nicht unterstützte Standardparameter 'parameter'

Der Compiler hat eine Methode mit mindestens einem Parameter mit Standardwerten erkannt. Die Standardwerte für die Parameter werden ignoriert, wenn die Methode aufgerufen wird. Geben Sie explizit Werte für diese Parameter an. Wenn Sie keine expliziten Werte für diese Parameter angeben, generiert der C++-Compiler einen Fehler.

Wenn die folgende DLL mit Visual Basic erstellt wurde, die Standardparameter für Methodenargumente zulässt:

' C4564.vb
' compile with: vbc /t:library C4564.vb
Public class TestClass
   Public Sub MyMethod (a as Integer, _
                        Optional c as Integer=1)
   End Sub
End class

Und das folgende C++-Beispiel, das die mit Visual Basic erstellte DLL verwendet,

// C4564.cpp
// compile with: /clr /W4 /WX
#using <C4564.dll>

int main() {
   TestClass ^ myx = gcnew TestClass();   // C4564
   myx->MyMethod(9);
   // try the following line instead, to avoid an error
   // myx->MyMethod(9, 1);
}