#include <functional>
#include <iostream>
using namespace std;
double y(int x);
std::function<double([y](){});
int main() {
cout<< f(y(3));
return 0;
}
//function definitions
double y(int x){return x^2;};
std::function<double([y](){}){return 2*y;};
您可以尝试以下操作:
#include <functional>
#include <iostream>
using namespace std;
double y(int x);
//std::function<double([y](){});
//std::function<double([y](){});
auto g( std::function<double(int)> f, int t)
{
return f(t);
}
int main() {
std::function<double(int)> yin = y;
double d= g(yin, 3);
cout << "d out is : " << d << endl;
return 0;
}
//function definitions
double y(int x)
{
return x*2;
}