Аргументы функции элемента, принимаемые "по умолчанию"
При вызове функции элемента в С++, разрешается не указывать ее
последние аргументы в списке и, таким образом, избавить программиста
от необходимости указывать их каждый раз при обращении. Определить
такие аргументы лучше списком в начале программы. Например:
#define RED 0x04
#define BLUE 0x01
Тем не менее не теряется и гибкость, поскольку, при необходимости изменить используемые по умолчанию значения, просто задаются
необходимые. В следующем примере последнему аргументу функции присваивается конкретное значение. Использование знака '=' означает, что
это значение может быть использовано по умолчанию. Достаточно будет
его пропустить, при обращении к функции.
Назначает по умолчанию
красный цвет
v
void set_pixel(int x, int y, int c = RED)
{
...
}
set_pixel(100,100,BLUE); // Переопределяет цвет
// установленный по умолчанию
set_pixel(200,300); // По умолчанию использует цвет RED
// (красный)
Примечание: необходимо помнить, что этот "механизм" может конфликтовать с механизмом переопределения функций (см.
"Связывание функций").