美文网首页
强、弱类型语言 and 动态、静态类型语言

强、弱类型语言 and 动态、静态类型语言

作者: 顽强的猫尾草 | 来源:发表于2019-01-21 19:14 被阅读92次

    先上结论:

    强类型:偏向于不容忍隐式类型转换。譬如说 Haskell 的 int 就不能变成 double。

    弱类型:偏向于容忍隐式类型转换。譬如说 C/C++ 语言的 int 可以变成 double,指针可以完全绕过类型系统。

      弱类型相对于强类型来说类型检查更不严格,比如说允许变量类型的隐式转换,允许手动(显式)强制类型转换等等。强类型语言一般不允许这么做。

    静态类型:编译的时候就知道每一个变量的类型,因为类型错误而不能做的事情是语法错误。

    动态类型:编译的时候不知道每一个变量的类型,因为类型错误而不能做的事情是运行时错误。譬如说你不能对一个数字 a 写 a[10] 当数组用。

      动态类型语言编程时,永远不用给任何变量指定数据类型。该语言会在第一次赋值给变量时,在内部将数据类型记录下来。静态类型语言写程序时要声明所有变量的数据类型,相当于使用之前,首先要为它们分配好内存空间。

    相关文章

      网友评论

          本文标题:强、弱类型语言 and 动态、静态类型语言

          本文链接:https://www.haomeiwen.com/subject/cnrhjqtx.html