Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A paraméter alapértelmezett értékének fordítási időállandónak kell lennie
Példa
A következő minta a CS1736-ot hozza létre:
// CS1736.cs
public unsafe class C
{
static void F(int i = G())
{
// ...
}
static int G() => 0;
A rendszer a metódus meghívása után kiértékel egy alapértelmezett paraméterértéket. Mi lehet az az érték, amikor a metódust végül meghívják, nem határozható meg előre deklaráláskor, kivéve, ha ez az érték fordítási időpontban állandó.
A hiba kijavítása
Ha dinamikusan kiértékelt értékre van szükség, fontolja meg a fordítási idő állandó használatát jelölőértékként, amelyet aztán futásidőben ellenőriz:
static void F(int i = -1)
{
if(i == -1) i = G();
//...
}