Junior — Middle
Potresti spiegare cosa si intende per functor in programmazione?
sobes.tech AI
Risposta dell'AI
Nella programmazione, specialmente in C++, un functor è un oggetto che può essere chiamato come una funzione. Di solito è una classe o struttura con un operatore operator() sovraccaricato. Questo permette di usare gli oggetti come funzioni, il che è comodo per passare comportamenti agli algoritmi.
Esempio di functor in 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); // Stampa 30
return 0;
}
I functor sono spesso usati nella libreria standard per configurare il comportamento degli algoritmi.