我想创建一个函数,它接受一个接受特定类型参数作为参数的函数.例如:
myFn(Function paramFn) { paramFn([1, 2, 3]); }
如何确保paramFn接受一个List
唯一的参数?
您可以使用typedef
在Kul的答案中定义您想要的签名,或者您可以简单地在参数中内联函数签名:
myFn(void paramFn(Listl)) { paramFn([1, 2, 3]); }
您可以使用typedef
将符号与满足所需签名的函数相关联.就像是
typedef void ParamFn(Listl); myFn(ParamFn f) { f('abc'); // compile time error f([1,2,3]); // works fine }