什么是打字纪律?

Vin*_*sil 0 c# terminology

维基百科谈论C#打字规则:

静态的,动态的,强大的,安全的,主格的,部分推断的

什么是打字纪律?这些术语的含义以及它们与语言的关系如何?

Kol*_*kov 7

维基百科上的输入规则是指C#使用的类型系统(只需单击链接,它将引导您进入类型系统文章).

至于他们的意思:

static - 类型在编译时确定(编译器在运行之前想知道类型)

dynamic - 类型是在运行时确定的(在C#中,这可以通过dynamicC#4.0中引入的关键字来实现)

安全 - 该语言不允许您违反其拥有的类型规则.例如,如果没有定义强制转换,则不能将字符串放入复杂类型列表中.

-不是不好解释,看看埃里克利珀关于这一专题的文章在这里

nominative - 类型的名称用于确定类型等价(这意味着具有相同字段但名称不同的两种类型被视为不同类型)

部分推断 - 编译器可以在编译时猜测你所指的类型(这是varc#中的关键字,它允许你不在代码中指定类型,尽管它仍然在编译时以静态和强大的方式确定办法)