尝试创建一个包含列表的自定义数据类型,并且似乎可以接受大多数泛型类型我不知道如何列出清单,但似乎…
在我的主程序中,我希望得到这样的东西:
type INFO is record
Neighbors:List(ITEM => Unbounded_String);
Name:Unbounded_String;
end record;
package Graph is new List(ITEM => INFO);
为什么这个不行?
对于Neighbors字段,您必须指定一个类型。这里的错误语法让人想起泛型实例化。
类似以下内容(警告,未编译):
package List_Of_Strings is new List(Item => Unbounded_String);
type INFO is record
Neighbors:List_Of_Strings.List_Type;
Name:Unbounded_String;
end record;
package Graph is new List(ITEM => INFO);
然后图。List_Type将是Info记录的列表。
谨慎,虽然!在更新列表项时,您必须清楚地理解按值传递与按引用传递的语义。