理解make文件的作用,我们就知道如何使用动态链接库
make是项目工程管理器,帮助分析一个工程依赖和被依赖关系。
makefile优先级高,Makefile优先级低
以DevC++为例,我们可以编译整个工程/项目,也可以编译单个源文件。
当我们的程序引用了动态链接库时,如果我们是编译整个工程的所有文件,那么我们需要设置右键[工程属性]中的链接命令,如果我们是编译单个源文件,那么我们需要设置主菜单中的[编译器选项]中的链接命令。
参考资料:
头文件和源文件
C或CPP头文件包含的原理和方法
https://www.bilibili.com/video/BV13V411o7Dn
1.依赖h/lib->编译cpp->链接obj->执行exe->加载dll
2.include包含=文件拼接
2.1.拼接时有先后顺序,无论怎么拼接,只要先后顺序对了即可。
2.2.很多时候,只需要用头文件就可以了,不需要把头文件和实现文件分开
3.重复包含=重复拼接
3.1.解决方法:使用预编译命令 #pragma once
4.交叉包含
4.1.分离基础类
4.2.分离h和cpp,头文件不实现细节,源文件实现细节。仅仅使用指针
头文件包含规范
部分人理解不到位的头文件包含规范
https://www.bilibili.com/video/BV1EE41137v9
include "stdio.h"//包含当前项目工程的头文件、同一目录的头文件
include <stdio.h>//包含别的项目工程的头文件
include <cmath.h>//包含c语言库
include <cmath>//包含c++库
变量
015-局部变量-全局变量-静态变量-作用域-生存周期
https://www.bilibili.com/video/BV18V411x7Yf
局部变量作用域就是{},全局变量的作用域就是整个文件,我的理解就是把整个文件看成一个大的{}。访问变量重名时,取最近的定义变量。
static变量的生存周期与全局变量一样(别的地方可以使用指针访问),static变量的作用域也是{},只被初始化一次。
全局变量别的地方要引用,extern
未完待续
#pragma comment的使用方法 pragma预处理指令详解L的博客-CSDN博客#pragma comment