Kompilatorfel C2548

"class::member" : standardparameter saknas för parameterparametern

Anmärkningar

Standardparameterlistan saknar en parameter. Om du anger en standardparameter någonstans i en parameterlista måste du definiera standardparametrar för alla efterföljande parametrar i den aktuella deklarationen eller eventuella tidigare deklarationer inom samma omfång.

Example

I följande exempel genereras C2548 för:

  • func1 eftersom standardargumentet bsaknas.
  • func3 eftersom standardargumentet csaknas.

Följande exempel genererar inte C2548 för:

  • func2 eftersom alla obligatoriska standardargument anges.
  • Den andra func4 deklarationen eftersom standardargumentet c anges i föregående deklaration och ligger i samma omfång.
  • Den tredje func4 deklarationen eftersom båda standardargumenten b och c tillhandahålls tidigare.
// C2548.cpp
// compile with: /c
void func1(int a = 1, int b, int c = 3);   // C2548

void func2(int a = 1, int b = 2, int c = 3);   // OK

void func3(int a, int b = 2, int c);   // C2548

void func4(int a, int b, int c = 3);   // OK
void func4(int a, int b = 2, int c);   // OK
void func4(int a = 1, int b, int c);   // OK