跳至主要內容

联编

LincZero小于 1 分钟

联编

联编

函数名联编(binding

  • 行为
    • 将源代码中的函数调用解释为执行特定的函数代码块
  • 实现机理
    • C:每个函数名都对应一个不同的函数,实现非常简单
    • C++:由于重载,实现变得复杂。但还是能在编译过程完成这种联编。但涉及到虚函数时,静态联编无法实现,需要动态联编

静态联编

静态联编(static binding),又称早期联编(early binding

动态联编

动态联编(dynamic binding),又称晚期联编(late binding

  • 举例
    • 动态内存
    • 虚函数/纯虚函数

一些动态的操作

  • 动态指定编程代码:函数模板的底层原理就是
  • 动态指定变量地址:动态内存new
  • 动态指定变量值:普通赋值,css3的calc属性
  • 动态指定变量类型:(模板提供参数化类型)函数模板、类模板
  • 动态指定变量名:一般是字典,key属于变量也属于变量名