据我了解,任何实现 Ada.Iterator_Interfaces 的东西都可以使用 Ada 2012 for 循环语法。“for ... [in|of] .. 循环 .. 结束循环;
如何创建一个通用子程序,我可以用实现 Ada.Iterator_Interfaces 的包中的类型来实例化它?然后可以让该子程序使用 Ada 2012 for 循环遍历该类型。
在 Java 中,这可能看起来像:
public String join(Iterable<String> collection) {
for (item : collection){
//do stuff
}
}
例如(尽管不是唯一的情况)一个经典的连接函数,它可以接受任何包含字符串的可迭代容器,并返回在字符串列表中连接在一起的所有字符串。例如。
my_container = ["a","b","c"]
join(my_container) = "abc"
谢谢
马特