據我所知,有兩種不同的方式來對VBA中的數據類型進行分類。哪種數據類型類別是字符串
- 對象類型與非對象
- 值類型與參考類型
我假設對象類型是相同的引用類型。但我讀到,有關對象和非對象類型之間的分配存在差異:
Dim i As Integer
i = 1
Dim chrt As Chart
Set chrt = something
注意「Set」。現在在下面的鏈接中,String被分類爲引用類型。
http://msdn.microsoft.com/en-us/library/t63sy5hs.aspx
但
Dim str As String
Set str = "abc"
是錯誤的,
Dim str As String
str = "abc"
是正確的。因此引用類型和對象類型是不等價的。有什麼不同?
您提供的鏈接是關於.Net和VB.Net,* not * VBA(它是基於COM的,而不是基於.Net的)。在VBA中,您可以將字符串視爲值類型。然而,在較新的VB.Net中,一方面,整個'Set..'業務消失,另一方面,字符串變成真正的類/對象,但是* VB.Net爲了兼容性原因隱藏了這個實例,你不必在字符串中使用'New'關鍵字)。 – RBarryYoung 2014-12-10 22:10:15