在Python中:
#!/usr/bin/python
def f1(a, b, c, d):
return a + b + c + d
x = 5;
y = 6;
z = 7;
fm = lambda m: f1(m,x,y,z)
print fm(4)
在Matlab中:
function [retval] = f1(a, b, c, d)
retval = a + b + c + d;
x = 5;
y = 6;
z = 7;
fm = @(m) f1(m,x,y,z);
fm(4)
我知道没有gcc扩展,C中就没有嵌套函数。如何在C中获得与使用嵌套函数相同的功能?如何在另一个函数(如示例中)中声明变量并将其用作常量?你知道吗
可以使用预处理器宏执行此操作:
或者如果你可以使用C++:
在Python示例中,没有什么比“嵌套函数”更好的了——只有一个匿名函数,它可以被一个命名函数替换。FWIW您的Python代码片段很容易用C重写:
相关问题 更多 >
编程相关推荐