Сообщение Re[4]: перегрузки с приоритетами от 30.06.2023 17:53
Изменено 30.06.2023 17:59 kov_serg
Re[4]: перегрузки с приоритетами
Здравствуйте, Кодт, Вы писали:
_>>А что мешает вместо dispatch делать return_function, а у неё брать сигнатуру ?
К>То, что семейство функций — не первоклассный объект. Как ты из hf вернёшь f?
А что мешает вместо int возвращать функцию или её номер.
_>>А что мешает вместо dispatch делать return_function, а у неё брать сигнатуру ?
К>То, что семейство функций — не первоклассный объект. Как ты из hf вернёшь f?
А что мешает вместо int возвращать функцию или её номер.
Re[4]: перегрузки с приоритетами
Здравствуйте, Кодт, Вы писали:
_>>А что мешает вместо dispatch делать return_function, а у неё брать сигнатуру ?
К>То, что семейство функций — не первоклассный объект. Как ты из hf вернёшь f?
А что мешает вместо line возвращать функцию или её номер.
_>>А что мешает вместо dispatch делать return_function, а у неё брать сигнатуру ?
К>То, что семейство функций — не первоклассный объект. Как ты из hf вернёшь f?
А что мешает вместо line возвращать функцию или её номер.
enum {
fun0_auto,
fun5_int,
fun5_const_char_ptr,
fun10_ref_int,
fun10,
fun20_short,
fun20_short_ref,
fun20_long_ref,
fun30_int_int
};
int fun(prio<0>, auto&&...) { return fun0_auto; }
int fun(prio<5>, int) { return fun5_int; }
int fun(prio<5>, const char*) { return fun5_const_char_ptr; }
int fun(prio<10>, int&) { return fun10_ref_int; }
int fun(prio<10>) { return fun10; } // перегрузка с другим количеством аргументов
//int fun(prio<20>, short) { return fun20_short; }
int fun(prio<20>, short&) { return fun20_short_ref; }
int fun(prio<20>, long&) { return fun20_long_ref; }
int fun(prio<30>, int, int) { return fun30_int_int; }