一个不知道难不难的问题,这样的函数如何定义?

乘思者 2005-12-14 11:02:33
我的函数有一个参数,而这个参数的要求是必须同时实现两个借口,那么我的这个函数如何定义?
...全文
118 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
乘思者 2005-12-15
那就是还是要专门做个来封装他们?解决不了,晚上结贴了!
  • 打赏
  • 举报
回复
sniper81 2005-12-14
这个参数必定是某种类型,假如是Class3,而这种类型要实现2个接口,所以
接着上面2位的回答,大约也可以:
class Class3 :I1,I2
{
//2个接口的实现
}
  • 打赏
  • 举报
回复
乘思者 2005-12-14
非要用个额外的类或者接口包装一下?
  • 打赏
  • 举报
回复
c11_11_11 2005-12-14
public interface I1 ...
public interface I2 ...
public interface I3 : I1, I2 ...

public class test
{
public void fun(I3 obj);
}
这个牛
  • 打赏
  • 举报
回复
jimh 2005-12-14
public interface I1 ...
public interface I2 ...
public interface I3 : I1, I2 ...

public class test
{
public void fun(I3 obj);
}
  • 打赏
  • 举报
回复
zhiang75 2005-12-14
class 参数
{
接口A;
接口B;
}

行吗?
  • 打赏
  • 举报
回复
marvelstack 2005-12-14
public interface I1 ...
public interface I2 ...
public class Class1 : I1, I2 ...

public class test
{
public void fun(Class1 obj);
}
  • 打赏
  • 举报
回复
a311300 2005-12-14
用继承的方式较合适
  • 打赏
  • 举报
回复
乘思者 2005-12-14
这个参数必定是某种类型,假如是Class3,而这种类型要实现2个接口,所以
接着上面2位的回答,大约也可以:
class Class3 :I1,I2
{
//2个接口的实现
}

是的,但Class3不是一个,而是一群类,他们共同的特点是实现了I2,并都从同一个父类继承。我的目的就是定义一个方法,让其可以而且必须是以他们这群类做参数。
  • 打赏
  • 举报
回复
jiezhi 2005-12-14
非要用个额外的类或者接口包装一下?

也可以不包装。
你可以令其类型是Object,然后在函数中检查传入的参数是否实现了那两个接口。
-------但这并不是好的做法。
  • 打赏
  • 举报
回复
发帖
C#
加入

10.7w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
申请成为版主
帖子事件
创建了帖子
2005-12-14 11:02
社区公告

让您成为最强悍的C#开发者