Есть ли хороший способ записи заголовков функций C/C++ с параметрами по умолчанию, которые являются вызовами функций?Может ли результат вызова функции использоваться как значение параметра по умолчанию?
У меня есть заголовок с функцией:
int foo(int x, int y = 0);
Я работаю в большой базе кода, где многие функции называют эту функцию и зависят от значения по умолчанию. Это значение по умолчанию теперь необходимо, чтобы изменить что-то динамичное и я ищу способ сделать:
int foo(int x, int y = bar());
Где бар() есть некоторая функция, которая генерирует значение по умолчанию на основе некоторых параметров системы. Кроме того, этот прототип функции будет выглядеть следующим образом:
int foo(int x, int y = baz.bar());
Где БАЗ функция, принадлежащая к объекту, который не был реализованным в файле заголовка.
AFAIK это относится к C++ не C (C не поддерживает значения по умолчанию). – Motti 2008-10-14 20:57:28