Код: Выделить всё
struct f1{
KOKKOS_INLINE_FUNCTION
void operator()() const{
printf("Functor 1\n");
};
};
struct f2{
KOKKOS_INLINE_FUNCTION
void operator()() const{
printf("Functor 2\n");
};
};
Я сделал то же самое для хост-среды без использования Kokkos, используя вектор указателей функций с функциями, определенными следующим образом:
Код: Выделить всё
void f1()
{
printf("Function 1\n");
}
void f2()
{
printf("Function 2\n");
}
Код: Выделить всё
std::vector f_list;
f_list.push_back(&f1);
f_list.push_back(&f2);
Код: Выделить всё
void function(std::vector f_list)
{
....
....
for(int i = 0; i
Подробнее здесь: [url]https://stackoverflow.com/questions/78690544/c-kokkos-passing-list-of-functors-as-argument-to-a-function[/url]