自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 面试—C++深拷贝的两种实现方式

#include <iostream>using namespace std;//传统版class String{public: String(const char* str = "") { if(nullptr == str) str = ""; _str = new char[strlen(str) + 1]; strcpy(_str, str); //if (nullptr == str) //{ // _str = new char[1];

2021-03-20 09:55:08 1493

原创 C++之模板

面试官:写一个通用类型的加法函数int Add(int left, int right){ return left + right;}double Add(double left, double right){ return left + right;}char Add(char left, char right){ return left + right;}缺陷:1.代码的复用性较低2.不太好维护3.并不能够将所有类型重载出来—顶多时将内置类型重载完成,自定义类型没办法

2021-03-17 15:16:19 624

原创 C++动态内存管理(补充)

C++既然可以兼容C语言,即C语言中动态内存管理的方式在C++中仍旧可以使用,为什么C++要单独做一套动态内存管理的方式?**答:**在C++中,使用malloc/free在堆上申请或者释放内置类型的空间,没有任何问题,但是不能采用malloc从堆上申请对象的空间–>因为:malloc不会主动调用构造函数,因此该块空间并不能成为对象,而只是与对象大小相同的一块堆空间。也不能使用free释放堆对象的空间,因为free在释放对象空间时,不会调用析构函数将对象中的资源清理干净C++中动态内存管理方式:

2021-03-16 16:43:27 575

原创 回顾C语言中动态内存管理方式

malloc/calloc/realloc这三个方法之间的区别相同点a.都是C语言中用来进行动态内存申请的库函数b.申请的空间都在堆上,用完之后必须要使用free来进行释放c.如果空间申请成功,返回空间的首地址,如果申请失败返回的是NULL,因此在使用之前必须要进行判空d.返回值类型都是void*,在接收返回值时必须要进行强转不同点1.void* malloc(size_t size)malloc的参数时用户所申请空间的字节数,申请空间成功返回空间的首地址,如果申请空间失败,返回的是空,用户

2021-03-15 12:10:23 633

原创 C++动态内存管理

内核空间:放的是与操作系统相关的代码,用户没有权限直接去操作,如果要操作,只能通过api函数进行栈: 存放与函数调用相关的一些数据栈帧:函数的参数、函数体中的局部变量、一些寄存器信息特性:函数调用完成之后,对于的栈帧就被回收了有默认的大小(linux下默认8M)**内存映射段:**放置静态库动态库的数据等堆: 用户进行动态内存申请C语言中:malloc/calloc/realloc这些空间用完之后,必须要通过free来进行释放堆空间相对而言比较大**数据段:**全局数据(变量和对象),.

2021-03-15 10:08:35 589

原创 面试-static关键字

在C语言中:static可以修饰变量和函数修饰函数:改变该函数的连接属性,表明该函数只能在当前文件中使用修饰变量:全局变量:表明该变量只能在当前文件中使用函数体中的局部变量:1.延长该变量的生命周期(和成员函数的生命周期一样)2.类似该变量具有记忆的功能3.存放位置不同于函数体中的局部变量在C++中因为c++要兼容c语言,所以在修饰函数和变量时同C语言。除此之外C++中static还可以修饰类成员:成员变量和成员函数—>静态成员...

2021-03-15 09:39:00 624

原创 centos忘记密码怎么办?教你如何巧妙解决~

假设我们的root密码忘记了,请问如何找回密码?思路:进入到单用户模式(1),然后修改root密码,因为进入单用户模式,root不需要密码就可以登录。步骤:1.开机->在引导时立马按(321之前) 回车键2.看到一个界面输入e(开启前编辑)3.看到一个新的界面,选中第二行(编辑内核)再输入e->在这行最后输入空格1 再按回车键->再次输入b,这时就会进入到单用户模式4.直接修改密码指令:passwd root5.重启:reboot...

2021-03-02 00:06:02 1757

空空如也

空空如也

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

TA关注的人

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