Delen via


Compilerwaarschuwing (niveau 4) C4564

methode 'methode' van klasse 'klasse' definieert niet-ondersteunde standaardparameter 'parameter'

Opmerkingen

De compiler heeft een methode met een of meer parameters met standaardwaarden gedetecteerd. De standaardwaarde(s) voor de parameters wordt genegeerd wanneer de methode wordt aangeroepen; Geef expliciet waarden op voor deze parameters. Als u niet expliciet waarden voor deze parameters opgeeft, genereert de C++-compiler een fout.

Example

Gezien de volgende .dll gemaakt met Visual Basic, waarmee standaardparameters voor methodeargumenten zijn toegestaan:

' 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

En het volgende C++-voorbeeld dat gebruikmaakt van de .dll gemaakt met Visual Basic,

// 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);
}