因业务开发需要,引入了一个第三方DLL(貌似添加不了附件),用VC的对象浏览器查看如下图所示:
问题:
1、函数CallBomMenuFunction(为了截图方便简写:CallB)中定义变量ppPEBomCollections时,为何用的是PEBomCollections这个接口,而不是PEBomCollectionsClass这个类?
2、从PEBomCollections定义语法上看,它也不是继承自IPEBomCollections的接口,但却可以直接引用.Counts属性,为何?
3、接口也可以作为一种数据类型来定义变量?
4、因历史原因,已经找不到此DLL的原始作者,不明为什么在这个DLL中,总是会有IXXX,XXX接口,XXXClass这样的组合出现?