zoukankan      html  css  js  c++  java
  • 类型与函数:函数是一种复合类型,它的构建依赖于数据类型

    一、函数与类型:

    类型强调数据的组织;

    函数强调数据的访问;

    二、函数与数据

    函数能访问一个数据类型就定义为函数与类型进行了绑定;

    函数作为类型与类型间的桥梁;或者从一个类型直接输出到另一个类型;

    或者集合几个输入类型输出到另一个类型;

    三、函数的类型

    函数是一种复合类型;

    调用约定是它的元类型;

    函数签名(函数声明)是它的抽象类型;

    函数定义是它的具体类型(指定了函数地址);

    函数的调用构建是它的实例变量;

    函数作为一种类型,

    它的元类型是调用约定;调用约定定义了它的访问方式;

    它的抽象类型是函数的声明:函数的声明是数据类型与操作在形式上的绑定;

    它的具体类型是:函数的地址和函数签名;约定了哪些类型作为输入和输出(包含哪些数据类型);

    它的静态实例是符合类型的配置构建:即对函数进行输入输出参量的配置;只有配置的类型符合函数类型的约束,才能访问函数;

    它的动态实例是:函数调用栈;

    函数作为一个结构体的定义

    {

    函数名称

    函数地址;

    输入参量;

    输出参量;

    }

    函数签名包含了一个函数的信息,包括函数名、它的参数类型、它所在的类和名称空间及其他信息。函数签名用于识别不同的函数,就像签名用于识别不同的人一样,函数的名字只是函数签名的一部分

    https://www.cnblogs.com/feng9exe/p/6400597.html

    函数与类型的绑定方式有两种:

    1、基于类型的操作绑定:类型具有操作的访问权,类型本身作为环境变量与函数进行了绑定;

    2、分离绑定:类型只代表数据不包含操作,类型与函数的绑定通过构建函数类型来实现;类型作为函数的输入输出参量,从而实现绑定。

    每一次函数调用,都暗含函数的实例化;都实现了使用数据类型对函数类型的初始化构建;然后进行的调用;

  • 相关阅读:
    【BZOJ3261】— 最大异或和(可持久化0/1Trie)
    【ZJOI2007】—捉迷藏(动态点分治)
    【HNOI2010】-城市建设(动态最小生成树)
    【BOI2007】Mokia 摩基亚
    【BZOJ 3262】-陌上花开(CDQ分治+树状数组)
    Win64 驱动内核编程-24.64位驱动里内嵌汇编
    Win64 驱动内核编程-23.Ring0 InLineHook 和UnHook
    Win64 驱动内核编程-23.Ring0 InLineHook 和UnHook
    Win64 驱动内核编程-22.SHADOW SSDT HOOK(宋孖健)
    Win64 驱动内核编程-22.SHADOW SSDT HOOK(宋孖健)
  • 原文地址:https://www.cnblogs.com/feng9exe/p/10531211.html
Copyright © 2011-2022 走看看