Dela via


Kompilatorvarning (nivå 4) C4564

metoden "method" för klassen "class" definierar standardparametern "parameter" som inte stöds

Anmärkningar

Kompilatorn identifierade en metod med en eller flera parametrar med standardvärden. Standardvärdena för parametrarna ignoreras när metoden anropas. uttryckligen ange värden för dessa parametrar. Om du inte uttryckligen anger värden för dessa parametrar genererar C++-kompilatorn ett fel.

Example

Med följande .dll som skapats med Visual Basic, vilket tillåter standardparametrar för metodargument:

' 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

Och följande C++-exempel som använder .dll som skapats med 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);
}