- 博客(13)
- 收藏
- 关注
原创 Linux进程等待
status : 由低16位的比特位表示 0000 0000 0000 0000 ,0-7 表示子进程是否异常,终止信号。—— 通过系统调用wait/waitpid,来进行对子进程进行状态检测与回收的功能。a、 僵尸进程无法被杀死,需要通过进程等待来杀掉它,进而解决内存泄漏问题------ 必须解决。b、 通过进程等待获取子进程的退出情况,以获取其任务完成状况。pid > 0 ,等待其进程ID与pid相等的子进程。父进程通过调用 wait/waitpid 进行僵尸进程的回收问题。
2024-04-25 08:56:16
187
1
原创 make/makefile
make回根据源文件和目标文件的新旧,判定是否需要重新执行依赖关系进行编译!文件 = 文件内容(Modify) + 文件属性(Change)不一定总是执行,(.PHONY--伪目标)可以使得总是执行。makefile:是一个当前目录下的文件。stat 访问源文件和可执行文件的时间。make:是一条指令。
2024-03-03 21:13:48
133
原创 Linux 开发工具
库其实就是把源文件(.c),经过一定的翻译,然后打包 --- 只提供一个文件即可,不同提供太多的源文件,也可以达到隐藏文件的目的。a、动态库因为是共享库,有效的节省资源(磁盘空间,内存空间,网络空间等)【优】动态库一旦缺失,导致各个程序都无法运行【缺点】在Linux中,如果要按照静态链接的方式,进行形成可执行程序,需要添加 -static选项 --- 提供静态库。b、静态库,不依赖库,程序可以独立运行【优点】,体积大,比较消耗资源【缺点】- c 从现在开始进行程序的翻译,将汇编工作做完,停下来。
2024-03-03 15:50:41
512
原创 Linux工具
命令模式 --- i ------- 插入模式 ---- esc ------ 命令模式 ----shift+;shiift + R : 替换模式, 对内容进行整体替换 ------ 》第四种模式。vim编辑器 ----- 文本编写 ----- 写代码。(n)r : 对光标字符 + 之后的所有字符进行批量化替换。shift + g(G) : 定位光标到最结尾行。n+shift + g(ng):定位光标到任意行。(n)p:粘贴(n重复行)到光标所在行下一行。(n)yy: 复制光标所在行(n行)
2024-02-29 20:37:46
339
原创 【无标题】Linux权限
设置, 一般是共享文件,大家可以在目录进行各自文件的增删查改,只允许文件的拥有者或者root能删这个文件,其他人一概不允许,t是一种特殊的X权限。1 1 0 1 1 0 1 0 0 ----664 最终权限 = 起始权限 & (~umask)- : 普通文件 -----文本,可执行程序,库基本都属于普通文件。c : 字符设置文件 -----键盘,显示器文件等。b : 块设备文件 -----磁盘文件。p : 管道文件 -------
2024-02-28 20:50:49
676
1
原创 C++ 继承
在C++继承当中,对子类对象初始化,首先会默认调用父类自己的默认构造函数,然后再初始化子类的内容。若没有写父类的默认构造函数,则会出现报错。或者需要显示的调用父类的构造函数。对于拷贝构造函数,父类会调用自己的拷贝构造函数,但若父类中没有写拷贝构造函数,则会调用默认构造函数,因为拷贝构造也是构造函数的一种,但这样便无法达到拷贝构造的效果。对于析构函数,则有所不同,编译器会自动调用父类的析构函数,因此不需要自己显示的调用,首先会析构子类,然后析构父类。
2023-09-04 11:34:41
41
1
原创 C++模板进阶
编译器在预处理的时候,拿到push函数的声明,等到链接的时候进行兑现。如果,模板参数下函数的声明和定义没有分离,责会在Test.cpp中根据如“stack<int>”,进行实例化在编译的时候便会拿到相应的地址。使用模板可以实现一些与类型无关的代码,但对于一些特殊类型的可能会得到一些错误的结果,因此需要进行特殊化处理。但此种方法存在一个问题,需要根据Test.cpp中定义的不同类型进行不同的相应声明代码,颇为繁琐。2、直接在Stack.h中进行声明和代码的分离,来使得类中的代码看起来不那么的臃肿。
2023-09-03 11:42:40
40
原创 模板关键字typename和class不同意思的场景
上述情况中当模板参数使用class时,若使用下面代码, Container::const_iterator it = v.begin();由于代码没有进行实列化,编译器无法分清(Container)是一个类对静态成员的访问,还是相应的模板参数,或者是内部类情况。因此若是要用class当模板关键字时,需要在上述行前面加上相应的声明,明确告诉编译器这里是类型,如下。须用typename而不能用class的场景。或者直接用typename模板关键字即可。因为静态成员的访问跟次访问格式相同。
2023-09-01 09:01:24
44
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人