Megosztás a következőn keresztül:


Fordító figyelmeztetése (4. szint) C4564

Az „class” osztály „method” metódusa nem támogatott alapértelmezett „parameter” paramétert határoz meg.

Megjegyzések

A fordító egy vagy több alapértelmezett értékkel rendelkező paraméterrel rendelkező metódust észlelt. A metódus meghívásakor a rendszer figyelmen kívül hagyja a paraméterek alapértelmezett értékét; explicit módon adja meg ezeknek a paramétereknek az értékeit. Ha nem ad meg explicit módon értékeket ezekhez a paraméterekhez, a C++ fordító hibát fog generálni.

Example

A Visual Basic használatával létrehozott alábbi .dll lehetővé teszi a metódusargumentumok alapértelmezett paramétereit:

' 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

És az alábbi C++ példa, amely a Visual Basic használatával létrehozott .dll használja,

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