Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Class::member: отсутствует параметр по умолчанию для параметра
Замечания
Список параметров по умолчанию отсутствует. Если вы предоставляете параметр по умолчанию в любом месте списка параметров, необходимо определить параметры по умолчанию для всех последующих параметров в текущем объявлении или любых предыдущих объявлениях в одной области.
Пример
В следующем примере создается C2548 для:
-
func1так как он отсутствует аргументbпо умолчанию. -
func3так как он отсутствует аргументcпо умолчанию.
В следующем примере не создается C2548 для:
-
func2так как предоставляются все необходимые аргументы по умолчанию. - Второе
func4объявление, так как аргументcпо умолчанию предоставляется в предыдущем объявлении и находится в той же области. - Третье
func4объявление, так как аргументыbпо умолчанию иcпредоставлены ранее.
// 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