Matlab风格的函数在c ++中处理

时间:2017-04-24 19:01:43

标签: c++ matlab

在Matlab中,可以使用函数句柄轻松限制函数的输入。假设我们有一个Matlab函数函数function z = f(x,y)。如果我想修复x的值(比如x=0)并单独考虑y的新函数,我可以使用简单的函数句柄符号:

g = @(y) f(0,y)
然后我可以评估g(y),好像它是一个常规函数。我的问题是,在C ++中实现这种行为的好方法是什么?假设我有一个简单的函数对象

struct f{
    double operator()(double x,double y){return x*y;}
};

显然,我可以评估f(x,y)任何一对双精度(x,y),但我可以方便地定义一个新的函数对象g(y),用f来修复值x

0 个答案:

没有答案