COM接口方法限制

时间:2011-05-27 17:54:55

标签: c++ com

我将为WIN CE设备开发一个COM组件。可以添加到COM接口(组件)的方法数量是否有任何限制?

2 个答案:

答案 0 :(得分:4)

接口的一个好处是多个类可以重用您的接口。这将允许程序在不同的类上使用相同的方法而不关心它们是什么。

COM的一个目的是隐藏您正在访问的类的实现。在给定接口的情况下,用户不应该知道接口背后的内容。

想象一下,你有一把椅子,现在想象你有一辆自行车。 两者都可以使用ISeat接口。用户可以坐在任一对象上而不知道用户坐在哪一个上。现在自行车可以使用IPedal接口,而椅子不会使用该接口。现在,椅子不必拥有自行车实现的所有方法(如PedalForward)。

如果主席因为只有一个界面而必须实施这些方法,那么你必须对这些方法采取一些措施。你可以让方法什么也不做,但这对用户来说是无用的,并且可能是危险的,因为用户可能试图将椅子从车上踩下,这样他就不会受到汽车的撞击。或者,您可以抛出异常。这将是奇怪的,因为用户会想知道为什么物体无法前进。

所以,如果你在一个界面中有太多的方法,除了上帝级别的存在,你就不会以它的使用方式利用COM。

答案 1 :(得分:3)

没有

但是如果你必须在一个类中添加很多方法,那么很有可能你的设计被破坏了。

另外,请记住,一旦发布了COM接口,您永远不会“假设”更改它。

相关问题