Sobes.tech
Junior — Middle

El tudná magyarázni, hogy mit értünk funktor alatt a programozásban?

sobes.tech MI

Válasz az MI-től

A programozásban, különösen C++-ban, a funktor olyan objektum, amelyet függvényként lehet hívni. Általában egy osztály vagy struktúra, amelynek operator() túlterhelt. Ez lehetővé teszi, hogy az objektumokat függvényként használjuk, ami kényelmes a viselkedés átadásához algoritmusoknak.

Példa egy funktorra C++-ban:

#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-at ír ki
    return 0;
}

A funktorokat gyakran használják a standard könyvtárban az algoritmusok viselkedésének beállítására.