Сообщение Re[7]: упс... от 10.04.2015 2:15
Изменено 10.04.2015 2:24 bazis1
K>На тестовой функции всё работает как должно. При компиляции выдаётся варнинг:
K>
Скрытый текст | |
K>
| |
K>Но с этим, я думаю, как-нить разберусь.
Глюк, судя по-всему, здесь:
template <typename _Ty, size_t _Index> int GetArg(const std::vector<Local<Value>> &variants)
должно быть:
template <typename _Ty, size_t _Index> _Ty GetArg(const std::vector<Local<Value>> &variants)
K>Ещё раз огромное спасибо за помощь и за урок вариадиковедения тоже!
Меня самого любопытство одолело и я решил распотрошить std::bind()
K>На тестовой функции всё работает как должно. При компиляции выдаётся варнинг:
K>
Скрытый текст | |
K>
| |
K>Но с этим, я думаю, как-нить разберусь.
Глюк, судя по-всему, здесь:
template <typename _Ty, size_t _Index> int GetArg(const std::vector<Local<Value>> &variants)
должно быть:
template <typename _Ty, size_t _Index> _Ty GetArg(const std::vector<Local<Value>> &variants)
K>Ещё раз огромное спасибо за помощь и за урок вариадиковедения тоже!
Меня самого любопытство одолело и я решил распотрошить std::bind()
P.S. При желании этот код можно упростить, выкинув:
1. Копирование в промежуточный vector
2. Создание Invokable-объекта. Вместо этого методы можно сделать static и передавать туда явно указатель на вызываемую функцию, которую shim вытащит из info.Data().