查漏补缺(C++笔试)(更新中)

本文介绍了C++中的动态链接库与静态链接库的区别,预处理指令的作用,如#include、#define等,并详细对比了const和#define定义常量的不同。此外,还讨论了mutable关键字的用途,进程与线程的区别,以及const和static在不同场景下的作用。
摘要由CSDN通过智能技术生成

1.动态链接库与静态链接库的区别:

解:动态链接是指在生成可执行文件时不将所有程序乃至的函数链接到一个文件,因为有许多函数在操作系统带的dll文件中,当程序运行时直接从操作系统中找。而静态链接就是把所有乃至的函数全部链接到.exe文件中。

动态链接是只建立一个引用的接口,而真正的代码和数据存放在另外的可执行模块中,在运行时再装入。而静态链接是把所有的代码和数据都复制到本模块中,运行是就不在需要库了。

静态链接库与动态链接库的相同点:(1)、共享代码;(2)、代码封装。静态链接库与动态链接库的区别:(1)、静态链接库被包含在宿主程序中,而动态链接库则是在需要时动态的装载和卸载DLL文件;(2)、静态链接库中不能再包含其它动态或者静态链接库,而动态链接库中则可再包含。

2.   指令            用途

      #           空指令,无任何效果

      #include    包含一个源代码文件

      #define     定义宏

      #undef      取消已定义的宏

      #if         如果给定条件为真,则编译下面代码

      #ifdef      如果宏已经定义,则编译下面代码

      #ifndef     如果宏没有定义,则编译下面代码

      #elif       如果前面的#if给定条件不为真,当前条件为真,则编译下面代码

      #endif      结束一个#if……#else条件编译块

      #error      停止编译并显示错误信息

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值