自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 问答 (2)
  • 收藏
  • 关注

原创 C++基础知识面试——static关键字

还是跟this指针的关系,因为static关键字中不存在this指针,

2023-10-15 15:17:59 66

原创 C++ vector容器

resize和reserve函数本质都涉及了vector的内存存储空间,因为vector在内存中是连续存放的,所以当resize的空间大于现有的存储空间(capacity() 函数 返回当前vector在重新进行内存分配以前所能容纳的元素数量.)时,会重新选择更大的空间,并将所有元素复制过去。resize在初始化内存容量时有对值的初始化,所以。其底层实际就是一个指针,或者是对指针进行了封装因此迭代器失效,实际就是迭代器底层对应指针所指向的空间被销毁了,而使用一块已经被释放的空间,造成的后果是程序崩溃。

2023-07-28 12:03:06 162

原创 对象池学习——lambd表达式,完美转发,共享指针

对象池学习——lambd表达式,完美转发,共享指针

2023-07-21 14:46:03 108

原创 C++ 文件操作

先写再读,记得关闭输入流。

2023-07-18 15:13:19 63

原创 智能指针学习——共享指针

class Girl;public :Boy() {cout << "Boy 构造函数" << endl;cout << "~Boy 析构函数" << endl;public :Girl() {cout << "Girl 构造函数" << endl;cout << "~Girl 析构函数" << endl;// 陷阱用法 spBoy -> setGirlFriend(spGirl);// 此时boy和girl的引用计数都是2 } int main(void) {

2023-06-14 20:07:57 54

原创 C++ 动态库与静态库

面试被问到但是一窍不通,特来学习一下。

2023-06-03 11:37:02 59

原创 内存泄漏问题

因为面试被问到这个问题,但是自己回答的模模糊糊,所以特来学习学习。

2023-05-31 11:24:21 30

原创 力扣刷题三——无重复字符的最长子串(注释详解)

力扣刷题三——无重复字符的最长子串(注释详解)

2023-01-08 11:43:42 72

原创 力扣刷题二——两数相加(链表逆序)+(注释详解)

力扣刷题二——两数相加(链表逆序)+(注释详解)

2023-01-06 20:54:47 74

原创 LINUX学习——fork

LINUX学习——fork

2023-01-03 14:55:58 136

原创 LINUX学习——共享库与静态库

LINUX学习——共享库与静态库

2023-01-01 15:38:59 142

原创 LINUX学习——调试功能

LINUX学习————调试功能

2022-12-29 15:00:28 37

原创 LINUX学习——Makefile文件

LINUX学习——Makefile文件

2022-12-29 14:45:27 177

原创 C++ STL map

C++ STL map

2022-12-26 14:49:21 88

原创 C++学习:虚函数

虚函数

2022-11-24 16:35:57 184

原创 继承之下的赋值运算符重载

继承之下的赋值运算符重载

2022-11-14 17:25:48 90

原创 C++: 继承

C++: 继承

2022-11-09 22:54:10 46

原创 静态关键字Static

静态关键字Static

2022-11-03 11:48:23 67

原创 C++:函数指针

函数指针

2022-10-28 21:51:29 292

原创 C++: 友元friend

C++: 友元friend

2022-10-26 22:16:54 314

原创 c++ const的作用

饿饿

2022-10-15 21:09:42 1355

原创 数据结构——顺序队列

顺序队列特性:允许插入的一端叫队尾,O(1)允许删除的一端叫队头,O(n)如果把顺序队列设计成循环队列,可以把删除操作变为O(1)先进先出,后进后出结构体typedef struct SqQueue{ int front;//队头 int rear;//队尾下标,同“栈”的"top"指针,指向当前可以存放的结点 int *base; int queue_size;//如果要扩容,则需要加入这个成员}SqQueue,*PSqQueue;初始化void InitQueue(PSq

2022-05-23 20:33:34 44

原创 数据结构——双向链表

一.双向链表的操作文章目录结构体初始化头插尾插在pos位置插入val判空获取结点个数在DList中查找第一个key值,找到了返回地址,没有找到返回NULL删除第一个val的值返回key的前驱地址,如果不存在返回NULL返回key的后继地址,如果不存在返回NULL输出删除pos位置的数据销毁结构体typedef struct DNode{ int data; DNode *next; DNode *prior;}DNode,*DList;初始化void InitList(DLis

2022-05-23 18:58:01 92

原创 静态链表的实现

静态链表特性:静态链表利用顺序表模拟链表静态链表包含两条链表,一条为有效数据链表,一条为空闲节点链表有效数据链表为带头结点的循环链表,且头结点在0号下标空闲结点链表为带头结点的的循环链表,且头结点在1号下标ps[1]相当于空闲链表的表头ps[0]相当于有效链表的表头初始化void InitList(SNode* ps)//初始化{ assert(ps != NULL); if (ps == NULL) { return; } ps[0].next = 0; for (in

2022-05-14 13:48:58 322

原创 数据结构——单链表

数据结构一.单链表基本操作初始化void InitList(LinkList plist)//初始化{ assert(plist != NULL); plist->next = NULL;}头插法bool Insertplist(LinkList plist,int val)//头插{ assert(plist != NULL); //申请结点 LinkNode* p = (LinkNode*)malloc(sizeof(LinkNode)); assert(p != N

2022-04-25 20:16:10 639

原创 数据结构——定长顺序表

数据结构一.顺序表1.定长顺序表分为‘数组’和‘顺序表’两种。#pragma once//预防头文件被重复引用,若被重复引用则自动忽略定义 定长顺序表结构体#pragma once//typedef struct SQList //定长顺序表{ int length; int elem[10];}SQList, * PSQList;初始化void InitSqlist(PSQList ps)//初始化{ assert(ps!= NULL); ps->length

2022-04-16 19:22:58 441

原创 C语言——二维数组的学习

C语言——二维数组的学习1.1二维数组的定义int arr[2][3] = { {1,2,3},{4,5,6} };//定义一个两行三列的二维数组int arr1[2][3];//跟第一行意义一样,只不过数组里面存放的都是随机数int brr[2][3] = { {1,2},{3} };//其他地方会填充数字‘0’//输出:// 1 2 0// 3 0 0int crr[3][4] = { 1,2,3,4,5,6,7,8,9 };//行优先:先把第一行填充满,再填充第二行,不够的位置用 ‘0

2021-12-12 22:37:16 1062 2

原创 输入字符串“i am a student”将‘空格’替换成两个#

输入字符串“i am a student”将‘空格’替换成两个#思路:利用for循环遍历数组每一个元素,当遍历到空格时候,将元素从最后面再到最前面向后移一个单位,即“str[j+1] = str[j]”,然后将str[i]和str[i+1]都赋值‘#’。代码:#define _CRT_SECURE_NO_WARNINGS#include<stdlib.h>#include <string.h>#include<stdio.h>#include <io

2021-12-09 22:06:58 841

原创 C语言——指针的学习

**C语言——指针的学习一、指针的概念1.1指针的定义变量存放在内存中,而内存其实就是一组有序字节组成的数组,每个字节有唯一的内存地址。CPU 通过内存寻址对存储在内存中的某个指定数据对象的地址进行定位。这里,数据对象是指存储在内存中的一个指定数据类型的数值或字符串,它们都有一个自己的地址,而指针便是保存这个地址的变量。也就是说:指针是一种保存变量地址的变量。1.2为何使用指针1)指针的使用使得不同区域的代码可以轻易的共享内存数据,这样可以使程序更为快速高效;2)C语言中一些复杂的数据结构往往

2021-12-09 21:45:47 842

空空如也

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

TA关注的人

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