【发布时间】:2010-12-23 18:50:57
【问题描述】:
我有一个必须包含 IInteract 对象的列表。但IInteract 是一个通用接口,需要 2 个类型参数。
我的主要想法是遍历对象列表,如果它们尚未交互,则与另一个对象“交互”。 所以我有这个对象
List<IObject> WorldObjects = new List<IObject>();
还有这个:
private List<IInteract> = new List<IInteract>();
除了我无法编译最后一行,因为IInteract 需要 2 个类型参数。但在我添加它们之前,我不知道这些论点是什么。我可以添加类型 A 和 A 的对象之间的交互...或类型 B 和 C 的对象。
我想创建与“代理”对象和“目标”对象一起做某事的“交互”类,但我希望它们独立于对象......所以我可以在例如之间添加一个交互。 .. “SuperUltraClass” 和... “整数”。
我是否使用了错误的方法?
【问题讨论】:
-
你能告诉我们你的接口定义吗?我不确定我是否真的理解这个问题。
-
我想做的是在我自己的“虚拟世界”中模拟交互。我希望他们通过包括我自己的一系列“交互”来进行交互。每个对象都有自己的线程,世界也是如此。这只是一个测试,我希望每个对象都按节奏工作,并且每次更新都发生在每个“世界”周期内。问题是:只要我觉得有必要,我想“包含”对象类型之间的交互。所以我可以添加两个“OlympicRunner”类并让它们参加比赛。或者我可以添加一个“OlympicRunner”和一个“Waitress”并让他们说话。
标签: c# list generics interface