C++, как генерировать все перестановки перегрузок функций?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C++, как генерировать все перестановки перегрузок функций?

Сообщение Anonymous »

Предположим, у меня есть классы Date и классы Year, Month и Day.

Код: Выделить всё

struct Date {
Date(Year year, Month month, Day day) : d(day), m(month), y(year) {};
Date(Month month, Day day, Year year) : d(day), m(month), y(year) {};
Date(Day day, Month month, Year year) : d(day), m(month), y(year) {};
Date(Day day, Year year, Month month) : d(day), m(month), y(year) {};
...
...

private:
Day d;
Month m;
Year y;
}
Это позволяет мне не использовать определенную структуру аргументов для даты, поскольку у меня много перегрузок.

Могу ли я автоматически генерировать все перестановки/перегрузки?

Просто для ясности:
  • Перестановки касаются только раскладки аргументов, ничего о них следует
    изменить, поскольку я знаю, что это невозможно автоматизировать.
  • Все сгенерированные перегрузки должны иметь один и тот же код, поскольку меняется только
    расположение аргументов а не сама логика.


Подробнее здесь: https://stackoverflow.com/questions/305 ... -overloads
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»