2012-01-28 72 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,那就是您的業務。