Взгляните сюда:
https://godbolt.org/z/Y6Dhbz
Чисто победителями являются чисто POV:
Объявление как статус c const в заголовочном файле
static const Date dd(1970,1,1);
Использование constexpr
constexpr Date dd(1970,1,1);
Возвращение значения по умолчанию из встроенного метода.
inline Date default_date()
{
return Date(1970,1,1);
}
Как этот метод отличается от простого наличия глобальной константы следующим образом?
IF метод компилируется в одной и той же компиляции единица, то в принципе разницы нет. Однако, если default_date - extern, то вы будете подвергаться нескольким дополнительным нагрузкам. Лично я бы рекомендовал использовать constexpr.