Sobes.tech
Junior — Middle

Можете ли објаснити шта подразумева појам функтор у програмирању?

sobes.tech АИ

Одговор од АИ

У програмирању, посебно у C++, функтор је објекат који се може позвати као функција. Обично је то класа или структура са преоптерећеним оператором operator(). Ово омогућава коришћење објеката као функција, што је погодна за пренос понашања у алгоритме.

Пример функтор у C++:

#include <iostream>

struct MultiplyBy {
    int factor;
    MultiplyBy(int f) : factor(f) {}
    int operator()(int x) const {
        return x * factor;
    }
};

int main() {
    MultiplyBy multiplyBy3(3);
    std::cout << multiplyBy3(10); // Исписа 30
    return 0;
}

Функтори се често користе у стандардној библиотеци за конфигурацију понашања алгоритама.