【蚕食C++】 静态联编和动态联编

1、联编是指一个程序模块、代码之间相关联的过程;

2、静态联编,是程序的匹配、连接在编译阶段实现,也称为早期匹配。
重载函数使用静态联编

3、动态联编,是指程序联编推迟到运行时进行,所以又称为晚期联编(迟绑定)。
switch语句和if语句是动态联编的例子

4、C++与C相同,是静态编译型语言。

5、在编译时,编译器自动根据指针的类型判断指向的是一个什么样的对象;所以编译器认为父类指针指向的是父类对象;

6、由于程序没有运行,所以不可能知道父类指针指向的具体是父类对象还是子类对象,从程序安全的角度,编译器假设父类指针只指向父类对象,因此,编译的结果为调用父类的成员函数。这种特性就是静态联编。

7、多态的发生是动态联编,是在程序执行的时候判断具体父类指针应该调用的方法。

发布了57 篇原创文章 · 获赞 14 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43343803/article/details/104607126