std :: bind ho questo codice:std :: funzione e il comportamento
#include <iostream>
#include <functional>
#include <vector>
void fun()
{
std::cout<<"fun";
}
void gun(int)
{
std::cout<<"gun";
}
int main()
{
std::vector<std::function<void(int)>> vec;
vec.push_back(std::bind(fun));
vec.push_back(gun);
vec[0](1);
vec[1](2);
}
Può spiegare come sia possibile per std::bind
tornare std::function<void(int)>
quando vincolante void()
funzione?
Come è possibile chiamare la funzione void()
utilizzando il functor void(int)
?
proprio come un pignolo: per favore fornisci anche tutte le istruzioni necessarie "# include" nel tuo codice (vettore, iostreams, funzionale). Rende molto più conveniente copiare e incollare. – TemplateRex