- 博客(17)
- 收藏
- 关注
原创 Linux 常用命令
目录一、ls 指令二、pwd命令 三、cd 指令1、cd + 目录名2、cd .. 返回上级目录 3、cd ~ 进入用户家目 4、cd - 返回最近访问目录5、cd+相对路径&&cd+绝对路径四、touch指令五、mkdir指令 1、mkdir + 目录名 创建一个目录 2、mkdir -p 递归创建多个目录,一次性创建整个路径六、rmdir指令 && rm 指令1、rmdir指令一般只能删除空目录2、rm 可以同时删除文件或目录a. 删除目录需要使用 -r 参数(文件可以直接删,但目录不能直接删)
2024-12-03 22:04:33
937
原创 数据结构---顺序表
间开多了浪费,开少了不够用。所以现实中基本都是使用动态顺序表,根据需要动态的分配空间。静态顺序表只适用于确定知道需要存多少数据的场景。静态顺序表的定长数组导致。顺序表一般可以分为:静态顺序表和动态顺序表。大小,所以下面我们来实现动态顺序表。
2024-11-24 15:39:07
572
2
原创 C++ 模板下
1.模板复用了代码,节省资源,更快的迭代开发,C++的标准模板库(STL)因此而产生2.增强了代码的灵活性1.模板会导致代码膨胀问题,也会导致编译时间变长2.出现模板编译错误时,错误信息非常凌乱,不易定位错误。
2024-11-20 16:51:06
908
2
原创 C++ 模板上
如果我们要实现一个对于不同类型数据都可以使用的交换函数,我们应该如何做呢?由于在此之前我们学习过函数重载,所以很多人都会想到我们可以使用函数重载,那函数重载真的是最好的方案吗?首先看一下使用函数是重载的代码:那么我们能否告诉编译器一个模子,让编译器根据不同的类型利用该模子来生成代码呢? 当然可以,我们可以给编译器一个通用的模子,其余的工作交给编译器,这样我们就引入了泛型编程的概念,那么什么是泛型编程呢?a、函数模板 b、类模板 所以,对于开篇提出的Swap,我们就可以这样写:
2024-10-30 02:08:03
929
原创 C++ 内存管理
首先我们通过一道题,来了解内存分布: 我们一个一个来看: 那么问题又来了,既然会调用构造函数和析构函数,那么编译器是怎么知道调用了多少次构造,多少次析构的呢? operator new:该函数实际通过malloc来申请空间,当malloc申请空间成功时直接返回;申请空间失败,尝试执行空间不足应对措施,如果改应对措施用户设置了,则继续申请,否则抛异常。这里主要是对malloc进行封装,之所以不直接调用malloc而是通过封装了malloc的operato
2024-10-13 14:58:17
850
原创 C++ 类和对象下
如果需要在静态成员函数中调用非静态成员函数,必须先创建该类的对象,然后通过该对象来调用非静态成员函数。初始化顺序,_a2先被声明,自然先初始化_a2,此时的_a1并没有被初始化,还是个随机值,所以用_a1来初始化_a2,_a2自然就是随机值了,然后再初始化_a1,因为传了个1进去,所以_a1被初始化为1。,参见友元类的定义,内部类可以通过外部类的对象参数来访问外部类中的所有成员。从这道题我们可以知道,静态的成员函数不需要创建对象,就可以直接访问类的成员函数。非静态成员函数可以调用类的静态成员函数吗?
2024-10-11 00:33:47
1063
原创 C++入门
定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{} 中即为命名空间的成员。// 命名空间的成员使用命名空间,命名空间的使用有三种方式:(1)加命名空间名称及作用域限定符int a = 1;int main()//注意::这个就是作用域限定符return 0;(2)使用using将命名空间中某个成员引入int b = 9;using T::b;(3)使用命名空间名称 引入。
2024-10-07 02:48:09
863
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人