今天早上正在看一本书,其中我发现了一段如下所述:
表中的每个数据字段都是强类型数据成员,完全符合 .NET 的通用类型系统。
上面几行是否意味着“用不同语言编写的对象可以像这样相互交互”
如果它意味着上面的行,那么上面的行到底意味着什么,说不同的语言可以相互交互,就像
我正在尝试用一个例子来解决,但到目前为止还没有成功。
或者它是我想念的东西,需要知道。请帮我理解。
提前致谢
例如,您不能乘以或除以两种不同的类型,即String vs Integer
var answer = 1 * "1"; // you cannot do this
你必须明确地转换它,这被称为强类型
好像你在 php 中看到的
$x = "3" * 1; // is correct in php
所以在这里你不需要显式地转换它。
当我们说某些东西是强类型时,我们的意思是对象的类型是已知的和可用的。
假设我有如下功能
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++ 和许多其他语言)是强类型的,因为编译器会在编译时检测并标记这些错误。
看这里
不。这意味着1
和"1"
(或任何其他数字和字符串)是不同的值,不能在表达式中随意互换。
“完全符合 .NET 的通用类型系统”意味着数据类型可用于任何 .NET 语言。因此,如果您创建了一个在 c# 中公开符合 CTS 的属性的类,则可以从 VB.net 中使用该类。
“表中的每个数据字段都是强类型数据成员”意味着您可以依赖表中值的类型,如果需要,您必须将其转换为另一种类型。你不能进行隐式转换。
这意味着,如果有两个不同类型的变量,您必须对它们进行强制转换,以使操作可执行。
否则会抛出异常。