在创建用于 Implements 语句的各种接口时,可以使用 Visual Basic 或能够创建类型库的其他工具,如 MkTypLib 实用工具或者 Microsoft Interface Definition Language (MIDL) 编译器。
Visual Basic 创建的大部分类所定义的接口都能够适用于 Implements。如果使用 Visual Basic 中定义类的方式来创建接口,那么只需要避免在属性和方法的名字中使用下划线就没有问题了。
在使用 Visual Basic 之外的工具创建接口时,必须遵循某些规定才能使之适用于 Implements。下面列出了大部分的限制条件。
| VB 数据类型 | 等价的 MIDL 类型 |
| Integer | short |
| Long | long |
| Single | float |
| Double | double |
| Byte | unsigned char |
| Boolean | boolean 或 VARIANT_BOOL |
| String | BSTR |
| Variant | VARIANT |
| Date | DATE |
| Currency | CURRENCY 或 CY |
| Object | IDispatch |
| IUnknown | IUnknown |
注意 在创建类型库的时候指定 [oleautomation] 是有益的,这样将可以保证类型是正确的,但是,在通过 Visual Basic “引用...”对话框引用它之前,必须在没有属性的条件下构造它。
详细信息 请参阅《程序员指南》一书“对象编程”中的“多态性”,以及《部件工具指南》的《创建 ActiveX 部件》的“部件设计的一般规则”中的“通过实现接口提供多态性”。