![]() |
1
4
我以为我会回应你,却发现你的线在这里枯萎。对于初学者来说,聚合与OOP中的封装相比,但是有一些显著的区别。好的是,在外部接口中只需要很少的工作就可以公开一个聚合接口。不好的是,一个接口需要设计成从一开始就可以聚合,而OOP封装没有这样的要求。这限制了你有一个COM类放在架子上,随时可以被借用的可能性。从我自己的工作中,当面对是否支持聚合的问题时,我还没有回答“是的,有一天可能会有用”。执行委派和不委派的工作让我很头疼,所以我选择了“不”。 关于内部接口创建对象的问题很容易回答。内部接口不应该知道它是聚合的。更重要的是,它不知道是谁聚合的。因此,它无法知道外部是否对对象有用,或者是否将正确地委托给气。不是真正的问题,它可以简单地将接口指针交给它自己的一个接口。被聚合并不能禁止它。只需要转发未知接口。 但是的,聚合并不是很实际。 |
![]() |
2
1
我所实现或看到的每个COM对象在其create方法中都没有聚合检查。大多数COM对象MSFT船不支持聚合。 |
![]() |
Cleric · C#运行主动自动化对象-如何源事件? 7 年前 |
![]() |
Daniël J · 使用GUI制作COM服务器的最佳实践是什么? 7 年前 |
![]() |
Toponimo · 从Python访问COM方法 7 年前 |
|
user8666372 · 自动向可用引用添加引用 7 年前 |