Aracılığıyla paylaş


Derleyici Uyarısı (düzey 4) C4564

'class' sınıfının 'method' yöntemi desteklenmeyen 'parameter' varsayılan parametresini tanımlar

Derleyici, varsayılan değerlere sahip bir veya daha fazla parametreye sahip bir yöntem algılamıştı. Yöntem çağrıldığında parametreler için varsayılan değerler yoksayılır; bu parametreler için değerleri açıkça belirtin. Bu parametreler için değerleri açıkça belirtmezseniz, C++ derleyicisi bir hata oluşturur.

Visual Basic ile oluşturulan ve yöntem bağımsız değişkenlerinde varsayılan parametrelere izin veren aşağıdaki .dll göz önünde bulundurulduğunda:

' 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

Visual Basic ile oluşturulan .dll kullanan aşağıdaki C++ örneği,

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