Sobes.tech
Junior — Middle

Kas on funktor programmeerimises, kas see tähendab?

sobes.tech AI

Vastus AI-lt

Programmeerimises, eriti C++-s, on funktor objekt, mida saab kutsuda nagu funktsiooni. Tavaliselt on see klass või struktuur, millel on ülekoormatud operator(). See võimaldab kasutada objekte nagu funktsioone, mis on mugav algoritmidele käitumise edastamiseks.

Näide C++-i funktorist:

#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); // Väljund 30
    return 0;
}

Funktsioone kasutatakse sageli standardteegis algoritmide käitumise seadistamiseks.