Можно было бы объявить функцию с аргументом и указать, что значение по умолчанию для аргумента является результатом конструктора по умолчанию типа:
void foo(a::really::long::type::name arg = a::really::long::type::name());
Есть ли более сильный синтаксис для этого, который не предполагает ввода имени типа дважды? Что-то вроде:
void foo(a::really::long::type::name arg = default);
Я понимаю, что я могу typedef
использовать имя типа, чтобы сделать его более красивым, но мне любопытно, существует ли такой синтаксис.