Junior — Middle
Ar galėtumėte paaiškinti, kas yra funktorius programavime?
sobes.tech AI
Atsakymas iš AI
Programavime, ypač C++, funktorius yra objektas, kurį galima iškviesti kaip funkciją. Paprastai tai yra klasė arba struktūra su perrašytu operator() operatoriumi. Tai leidžia naudoti objektus kaip funkcijas, kas patogu perduodant elgseną algoritmams.
C++ pavyzdys:
#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); // Išves 30
return 0;
}
Funkcijos dažnai naudojamos standartinėje bibliotekoje algoritmų elgsenai konfigūruoti.