自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 map和set等关联式容器特性

1. set是按照一定次序存储元素的容器2.在set中,元素的value也标识它(value就是key,类型为T),并且每个value必须是唯一的。set中的元素不能在容器中修改元素总是const),但是可以从容器中插入或删除它们。3.在内部,set中的元素总是按照其内部比较对象类型比较所指示的特定严格弱排序准则进行排序。4. set容器通过key访问单个元素的速度通常比容器慢,但它们允许根据顺序对子集进行直接迭代。5. set。

2023-08-22 18:21:40 115

原创 进程的理解

计算机管理硬件1.描述起来,用struct结构体2.组织起来,用链表或其他高效的数据结构。

2023-08-22 18:12:55 102

原创 C++ 二叉搜索树的概念特性

或者是具有以下性质的二叉树。

2023-08-22 18:06:22 151

原创 c++ 虚函数类对象模型

形继承就有菱形虚拟继承,底层实现就很复杂。继承允许你根据基类的实现来定义派生类的实现。继承一定程度破坏了基类的封装,基类的改变,对派生类有很。对象组合是类继承之外的另一种复用选择。对象组合要求被组合的对象具有良好定义的接口。组合类之间没有很强的依赖关系,耦合度低。组合的耦合度低,代码维护性好。不过继承也有用武之地的,有。些关系就适合继承那就用继承,另外要实现多态,也必须要继承。派生类和基类间的依赖关系很强,耦合度高。,因为对象的内部细节是不可见的。继承,可以用组合,就用组合。,就存在菱形继承,有了菱。

2023-08-22 14:59:05 119

原创 C++ 继承

机制是面向对象程序设计。

2023-08-22 14:54:12 79

原创 c++ stack和queue

是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定 的成员函数来访问其元素,将特定类作为其底层的,元素特定容器的尾部(是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行 元素的插入与提取操作。优先队列是一种容器适配器,根据严格的弱排序标准,它的第一个元素总是它所包含的元素中最大的。优先队列被实现为容器适配器,容器适配器即将特定容器类封装作为其底层容器类,队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,

2023-08-22 11:41:39 61

原创 c++ list

1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。2. list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。3. list与非常相似:最主要的不同在于是单链表,只能朝前迭代,已让其更简单高效。4.与其他的序列式容器相比(arrayvectordeque)list通常在任意位置进行插入、移除元素的执行效率 更好。5.与其他序列式容器相比,list和。

2023-08-22 11:22:44 70

原创 c++ vector

1. vector是表示可变大小数组的序列容器。2.就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素 进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自 动处理。3.本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大小。为了增加存储空间。其做法是,分配一个新的数组,然后将全部元素移到这个数组。

2023-08-22 11:01:14 184

原创 c++ string类

这种设计也是有一定道理的,大多数情况下字符串的长度都小于16,那string对象创建好之后,内 部已经有了16个字符数组的固定空间,不需要通过堆创建,效率高。 其次:还有一个size_t字段保存字符串长度,一个size_t字段保存从堆上开辟空间总的容量 最后:还有一个指针做一些其他事情。 故总共占16+4+4+4=28个字节。 g++下string的结构 G++下,string是通过写时拷贝实现的,string对象总共占4个字节,内部只包含了一个指针,该指 针将来指向一块堆

2023-08-22 10:46:04 74

原创 Linux调试器-gdb使用

打印表达式的值,通过表达式可以修改变量的值或者调用函数。变量名:跟踪查看一个变量,每次停下来都显示它的值。:执行到当前函数返回,然后挺下来等待命令。调试,必须在源代码生成二进制程序的时候。:从当前位置开始连续而非单步执行程序。源代码,接着上次的位置往下列,每次列。:取消对先前设置的那些变量的跟踪。函数名:列出某个函数的源代码。函数名:在某个函数开头设置断点。:从开始连续而非单步执行程序。:查看当前栈帧局部变量的值。:参看当前设置了哪些断点。:查看各级函数调用及参数。出来的二进制程序,默认是。

2023-08-22 10:33:47 48

原创 C++内存分配管理

1.C++内存机制1.栈(Stack),函数中的局部变量,由编译器负责分配释放,函数结束,变量释放。2.堆(Heap),通过new 申请的内存,由delete或delete[]释放3.自由存储区(Free Storage),由程序员用malloc,calloc/realloc分配,free进行释放,忘记free,会导致内存泄漏,程序结束时,该区域内存由OS回收4.全局区/静态区(Global Static Area),全局变量和静态变量存储区。

2023-05-19 08:49:14 72

原创 Linux权限

root用户就好比充钱的VIP一样,可以在Linux下做任何事情,几乎不受限制,我们也称其为超级用户。因为root用户基本不受权限的限制,这样在使用的阶段就很容易出错。其中,某一件事情就对应Linux中的各种文件,而人就是指使用Linux的用户。换言之,所有的权限的概念都是用来限制普通用户的,而root用户几乎不受限制。因此,接下来所将的有关权限的知识主要是针对普通用户的。答案显而易见是错误的。文件和文件目录的所有者所在的组的用户: g---Group。2)-:向权限范围取消权限代号所表示的权限。

2023-05-19 08:45:41 66

原创 c++编程入门

C++是基于C语言而产生的,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行面向对象的程序设计。

2023-05-04 10:50:42 185

原创 c++类与对象

封装是C++面对对象三大特性之一。将属性和行为作为一个整体封装意义二:类在设计时,可以把属性和行为放在不同的权限下,加以控制访问权限有三种:公共权限 public (类内类外都可以访问)保护权限 protected (类内可以访问,类外不可以访问),在继承的时候,父亲的保护权限儿子可以访问。私有权限 private (类内可以访问,类外不可以访问),继承的时候,父亲的私有权限不可以被儿子访问。struct 和class的区别。

2023-04-24 21:25:41 67

原创 初学c++

在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是。如果说C语言的优点是指针,那么C++的优点就是性能和类层次结构的设计。大型的软件项目,要使用面向对象的思想编程。但是C语言的语法是面向过程的。语法结构是显式的、明确的。C++非常严谨、精确和数理化,标准定义很细致。现有面向对象的思想,后有面向对象的语言。在高级语言当中,处理运行速度是最快的。即可,{}中即为命名空间的成员。关键字的出现就是针对这种问题的。

2023-04-16 22:32:32 52

原创 常用排序算法总结

比如序列:{ 3, 5, 10, 8, 7, 2, 8, 1, 20, 6 },h=2时分成两个子序列 { 3, 10, 7, 8, 20 } 和 { 5, 8, 2, 1, 6 } ,未排序之前第二个子序列中的8在前面,现在对两个子序列进行插入排序,得到 { 3, 7, 8, 10, 20 } 和 { 1, 2, 5, 6, 8 } ,即 { 3, 1, 7, 2, 8, 5, 10, 6, 20, 8 } ,两个8的相对次序发生了改变。冒泡排序是一种极其简单的排序算法,也是我所学的第一个排序算法。

2023-04-10 16:28:28 55

原创 初学算法心得

例如要将数组arr=[4,2,8,0,5,1]排序,可以将4看做是一个有序序列,将[2,8,0,5,1]看做一个无序序列。无序序列中2比4小,于是将2插入到4的左边,此时有序序列变成了[2,4],无序序列变成了[8,0,5,1]。无序序列中8比4大,于是将8插入到4的右边,有序序列变成了[2,4,8],无序序列变成了[0,5,1]。希尔排序(Shell’s Sort)在插入排序算法的基础上进行了改进,算法的时间复杂度与前面几种算法相比有较大的改进,但希尔排序是非稳定排序算法。插入排序算法的原理如下:。

2023-04-01 14:56:48 80

原创 栈和队列的学习

栈和队列

2023-03-21 20:26:07 69

原创 C语言程序环境和预处理

C语言程序环境和预处理

2023-02-09 17:23:21 68

原创 C语言文件操作

文件操作

2023-01-15 12:29:19 112 1

原创 动态内存管理

内存管理

2023-01-14 12:39:48 89 1

原创 C语言实现简易版通讯录

C语言实现简易版通讯录

2023-01-12 14:58:09 2153 1

原创 结构体的介绍

结构体

2023-01-10 19:39:21 50

原创 操作符的理解

操作符

2023-01-09 11:57:07 44 1

原创 字符函数和字符串函数

字符串函数

2023-01-08 11:36:16 46

原创 指针的进阶

指针

2023-01-07 11:22:13 47

原创 常用算法分类对比及实现

常用算法分类对比及实现

2023-01-06 11:06:39 684 1

原创 数据库设计图书管理系统

数据库设计

2023-01-04 11:38:25 37835 13

原创 数据的存储

数据的存储结构

2023-01-04 11:12:20 119

原创 函数递归和函数栈帧的创建和销毁

函数栈帧

2022-11-24 20:55:37 133 1

原创 C语言实现扫雷游戏

C语言实现扫雷

2022-11-10 18:08:39 911 1

原创 C语言实现三子棋

C语言实现小游戏

2022-11-08 16:29:41 761 1

原创 函数的简介

初识C语言

2022-11-04 10:55:38 349 1

原创 分支与循环语句

分支与循环语句

2022-11-03 20:04:04 49

原创 指针的介绍

初识C语言

2022-10-31 13:22:40 53 1

原创 操作符的介绍

初识C语言

2022-10-31 12:31:20 140

原创 初识C语言

初识C语言

2022-10-30 12:51:44 49

原创 我的未来规划

我的未来规划

2022-10-14 14:38:44 102

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除