Я пытаюсь выполнить преобразование, уменьшающее вектор структур. Структура содержит два числа. Я хочу, чтобы унарная функция что-то делала с этими двумя числами и возвращала одно значение для каждой структуры в моем векторе и уменьшала с суммированием этих значений. Как написать свой функтор для доступа к значениям в структуре?
например, каков правильный синтаксис для mystruct.value1 внутри функции?:
struct unary_op
{
float operator()()
{
return mystruct.value1 + mystruct.value2; //function is a lot more complex
}
}
поэтому я могу сделать:
unary_op uop1;
thrust::transform_reduce(myvec.begin(), myvec.end(), uop1, 0, thrust::add)