我需要保持一个闭包但是在Swift中可用的任何持久性方法似乎都不可能,我似乎无法找到任何信息。
答案 0 :(得分:2)
自" Code"闭包的一部分是固定的(编译好的)没有必要坚持它,你只需要用关键字或其他标识符来保持对它的引用。这可以使用例如参考函数的字典(即函数工厂)来实现。
实际需要持久性的是闭包捕获的变量。这相当于函数的参数。
所以基本上,你应该以不同的方式处理你的问题并定义一组函数关键字和参数列表。您可以轻松地坚持这些,然后执行"通过将参数传递给与关键字相关联的函数的工厂来生成数据。