2012-01-28 53 views
2

有什么办法可以在VB6中长类型别名?我知道你可以定义用户类型,结构,但我需要类似长VB6类型别名

typedef int mytypename; 

用C的东西在那里我只是混叠简单类型

+4

不,没有。 – 2012-01-28 02:48:58

+0

这很糟糕。不过谢谢你让我知道 – oldSkool 2012-01-28 02:50:15

+0

枚举可能会给你想要的东西,这取决于实际的。 – Bob77 2012-01-28 15:43:55

回答

4

只能实现一个自定义类型库这样的typedef,可以被VB6占用。

例如OLE_COLOROLE_HANDLE在​​声明,并准备在VB6中使用,因为在Dim clr As OLE_COLOR等同于Dim clr As Long公共的typedef。

1

这在C中的唯一真正目的是支持可移植性。 C标准没有告诉你所有支持的体系结构中各种数字类型的大小,它只是告诉你最小的大小。因此,由于您可能需要更改基础实施类型,因此您使用typedef和代码的友好名称。

这不是在VB 6中的情况。所有内置类型的大小都是明确定义的,并保证不会改变。它是VB 6规范的一部分。因此,typedef或同等产品确实不需要太多。

我想一些人们使用typedef s在C为了可读性,但我不买这种用法。如果它是整数类型,则使用适当大小的整数类型。有没有真正的可读性好处:

typedef int ProductKey; 

在有意义的是,如果你定义一个新的,全面的类型,如彩色的唯一情况。但在这种情况下,C程序员通常使用一个typedef来定义颜色类型的整体类型,以节省空间和内存。

再次,这是在VB 6无关紧要的,因为你没有在VB 6摆在首位,如果你在乎吝啬内存使用和最大速度编写代码。有方式更具有优势,以创建结构(用户定义的类型),或甚至一个类,代表色彩类型,然后使用该在代码代替。这样一来,你的所有可读性的优点类型安全(这是一件好事,你做下,用typedef获得)。如果您想要将Color类型实施为Long,那就是您的业务。