今天上午正在阅读一本书,我在其中找到了如下所述的段落:
表中的每个数据字段都是一个强类型数据成员,完全符合.NET的通用类型系统。
上述行是否意味着“用不同语言编写的对象可以像”
一样互相交互如果它意味着以上几行,那么上述行的含义就是说不同的语言可以互相交流,如
我正试图找出一个例子,但直到现在都没有成功。
或者是我缺少并且需要知道的事情。请帮我理解。
提前致谢
答案 0 :(得分:21)
例如,您不能将两种不同的类型乘以或除以String vs Integer
var answer = 1 * "1"; // you cannot do this
你必须明确地施放它,这被称为强类型
就像你在php中看到的那样
$x = "3" * 1; // is correct in php
所以在这里你不需要明确地施展它。
答案 1 :(得分:15)
当我们说某些内容是强类型时,我们的意思是该对象的类型是已知且可用的。
假设我有类似以下的功能
public int Add(int a, int b){
return a+b;
}
我们可以将此功能称为
int result = Add(5,4);
但我们不能像下面这样做
int result = Add(5.2,4.5); // We will get here compilation error.
C#(以及C ++和许多其他语言)是强类型的,因为编译器将在编译时检测并标记这些错误。
请参阅here
答案 2 :(得分:4)
没有。这意味着1
和"1"
(或任何其他数字和字符串)是不同的值,不能在表达式中随意互换。
答案 3 :(得分:2)
“完全符合.NET的通用类型系统”意味着数据类型可用于任何.NET语言。因此,如果您创建了一个在c#中公开符合CTS的属性的类,则可以从VB.net中使用该类。
“表中的每个数据字段都是强类型数据成员”意味着您可以依赖表中值的类型,如果需要,则必须将其转换为其他类型。你不能做隐式演员。
答案 4 :(得分:0)
这意味着,如果有两个不同类型的变量,则必须进行转换,以使操作可执行。
否则会抛出异常。