我一直在研究关于oop的C#pdf,在阅读了大部分内容后,我决定对c#和vb进行比较,但我有点困惑
在c#中,据说int是一个结构。我用Visual Studio来检查它。我将光标指向
的intint num;
它说:struct System.int32。因此,我确信它是一个结构,它是VB中的结构
但是当我在VB中尝试过它时,
Dim num As Integer
它只是说:Integer表示一个32位有符号整数,它没有说任何关于作为一个结构的东西。这意味着什么?
我在vb中做了一个简单的结构
Structure person
End Structure
当我实例化它时
Dim jk As person
它说:结构人(当我指向光标时)。不是这意味着它会说结构,如果它是一个结构,但为什么不在整数?
是VB上的整数结构吗?如果没有,它是什么?
我只是一个初学者,只想学习。感谢
答案 0 :(得分:0)
是的,VB.NET Integer
类型与C#int
类型相同,并且都是.NET System.Int32
类型的别名,这是一种值类型(即struct
)。您可以在the documentation中看到这一点(因为该类型将自身称为Integer
,即使它被记录为名为Int32
),您也可以在测试程序中看到这个,如果你只是做了类似的事情如上所述声明变量num
,然后评估num.GetType().Name
。
将鼠标悬停在某个类型上时显示的工具提示不是由基础类型本身确定,也不是由语言本身确定,而是由编辑器确定。根据您使用的语言,您会看到两种不同的东西,这意味着编写每个编辑器的人就编辑器在这些情况下应该如何显示类型做出了不同的决定。
他们为什么这么做?我们只能推测。您将不得不询问设计编辑器的人员。我会猜测它是因为VB.NET对于那些曾经编写过非.NET Visual Basic代码的人来说是熟悉的,所以对于像这样的内置类型System.Int32
,他们特别提供了工具提示,以便显示开发人员已经熟悉的类型名称。