ybungalobill уже ответил на вопрос о том, где.
Что касается ссылок, для ссылки на const
T вы можете просто указать значение по умолчанию напрямую.
Для ссылки на не-const
вам необходимо указать "значение" по умолчанию в качестве ссылки на не-const
.Это может быть глобальный или экземпляр класса с подходящим преобразованием.Например,
#include <iostream>
struct DummyInt
{
int dummy;
operator int& () { return dummy; }
DummyInt(): dummy( 0 ) {}
};
void foo( int& v = DummyInt() ) {} // Whatever
int main()
{
int x = 42;
foo( x );
foo();
}
Приветствия и hth.,
- Alf