自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 继承与派生

继承与派生继承的本质:代码复用当派生类继承基类时,继承了基类的作用域 除构造函数以及析构函数以外的所以成员继承的方式:(三种)公有继承(public),保护继承(protect),私有继承(private)继承写法: 类标识  类名 : 继承方式  基类名称派生对象的构造和析构方式的顺序:   1.派生类对象的构造            1.系统调用基类的构...

2019-01-23 21:44:30 268

原创 C++单例模式

单例模式单例模式:一个类只生成一个对象将类中的构造函数与拷贝构造函数屏蔽起来 在类中提供一个接口生成唯一的对象(不能返回类类型,不能依赖对象调用)基本实现思路单例模式要求类能够有返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法)。 单例的实现主要是通过以下两个步骤:将该类的构造方法定义为私有方法,这样其他处的代码就无法通过调用该类的构造方法来实例化该类的对...

2019-01-23 21:09:06 231

原创 初始化列表及const、static修饰成员

1、构造函数的初始化列表初始化顺序和初始化列表的顺序无关,和成员变量/对象的声明顺序有关。class Test{public: Test(int a, int b) : mb(ma), ma(a), mc(ma) {} void Show() { std::cout << "ma:" << ma << std::endl; std:...

2018-12-06 15:47:09 327

原创 对象的生存周期

1、临时量内置类型生成的临时量为常量,在寄存器中。 自定义类型生成的临时量为变量,在内存中。 隐式生成的临时量为常量。2、临时对象的生存周期表达式结束3、临时对象的优化临时对象的目标:为了生成新的对象以生成临时对象的方法生成新的对象引用能提升临时对象的生存周期CGoods ggood1("good1", 10.1, 20); //存放在.data...

2018-12-06 13:48:57 339

原创 C++默认函数

1、构造函数(函数名与类型相同,对象开辟内存做初始化)构造函数由系统调用,初始化对象的内存空间特点:可以重载 不能手动调用 顺序构造2、析构函数(释放资源)特点:不可重载 可以手动调用(退化为普通函数调用) 先构造的后析构3、拷贝构造函数(用已存在的对象来生成一个相同类型的新对象)默认的拷贝构造函数是浅拷贝形参用&,防止递归构造形参对象导致栈溢出的问...

2018-12-06 13:23:33 276

原创 类和对象

1、oop 2、C++的三大特征封装 继承 多态 3、struct和class的唯一区别class的默认访问限定符为私有4、this指针类中普通成员方法中有默认的参数:this指针this类型:student *const this普通成员方法依赖对象调用5、类中6个默认的函数特点:1、共有的 2、内联的构造函数 析构函数 拷贝构造函数...

2018-12-06 13:03:12 210 1

原创 C和C++的区别(二)

1、引用引用就是个别名,内存单元的别名,底层以指针的方式来支持引用,在引用使用的地方,系统自带解引用的过程。int a = 10;int &b = a;a和b是同一个内存块引用的注意事项:引用一定要初始化 引用引用的变量要能取地址 引用是不可改变的 引用只能访问引用变量所以用的内存块的内容2、new、delete和malloc、freenew和mallo...

2018-11-29 17:39:22 172 1

原创 C和C++的区别(一)

1、函数的默认值(c++特有)函数的默认值是c++特有的,c语言不支持默认参数,但是可以用宏来模拟。从右向左依次附默认值 默认值只能附一次 一般是在声明上附默认值2、C++函数符号生成规则int Compare(int a, int b);             ?Compare@@YAHHH@Zdouble Compare(int a, int b);          ...

2018-11-27 19:36:12 473

原创 函数的调用约定

函数的调用约定1、_cdecl  C标准调用约定2、_stdcall  windows标准调用约定3、_fastcall  快读调用约定4、_thiscall  成员方法调用约定(本次不做详解) 那么函数的调用约定约定了哪些东西呢?1、函数符号的生成。2、实参的入栈顺序。3、形参的开辟和清理方式。实参的入栈顺序:1、_cdecl:由右向左入栈。2、_...

2018-11-14 20:51:40 189

原创 编译链接原理

虚拟地址空间      32位计算机,每个程序都有4G的虚拟地址空间。首先虚拟地址空间分为两大块,一个是用户空间,一个是内核空间。用户空间占3G的大小,并且它是每个进程所独有的,它的开头128M存放的是我们无法访问的地方。.text:C语言的编译后执行语句都编译成机器代码,保存在.text段;.data:已初始化的全局变量和局部静态变量都保存在.data段;.bss:为未初始化...

2018-11-14 19:53:14 302

原创 数据结构-不定长顺序表

        不定长顺序表,顾名思义,就是顺序表的长度不定,可以存放任意多个数据。与定长顺序表相比,它可以在顺序表长度不够用时自己进行扩容。那么在设计不定长的顺序表时,存放数据的数组就不能是固定长度的了,这时我们可以考虑用动态数组elem来代替,进行扩容时就可以动态申请内存,将数据存放到动态数组中。同时加入一个变量size来存放总的格子数(总容量)。接下来是代码:#include<...

2018-11-07 17:53:35 300

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

        顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。线性表采用顺序存储的方式存储就称之为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。用定长顺序表来实现基本操作代码如下:SeqList.cpp:#include<stdio.h>#include"SeqList.h"#inc...

2018-11-07 17:40:36 195

原创 初识Linux

 Linux······基于命令行的操作系统 ls     显示当前工作目录下的文件Linux文件存储层次结构:                                           /     根目录                     /bin     /etc     /proc     /mnt     /usr     /home     /root    ...

2018-10-07 22:29:31 143

原创 动态内存及释放内存崩溃原因

动态内存及释放内存崩溃原因之前有提到字符串的定义是无法将数组长度写成变量的,那么,我们在工作中就受到了很大的局限性,所以我们引入例如动态内存。1、      malloc(申请多少个字节)需要引用的头文件为#include<stdlib.h>小套路:int *p = (int *)malloc(n * sizeof(int));等同于int p[n];2、      calloc(将所...

2018-05-01 23:15:07 1339

原创 字符串初体验

字符串总结1、char arr[10] = {'a','b','c'};       //剩余部分为'\0'2、char crr[10] = {"abc"};          //字符数组特有3、 char drr[10] ="abc";           //字符数组特有 **4、 char err[] ="abc";              //字符数组特有 **字符串:1、以“”号包括...

2018-05-01 22:34:05 200

原创 进制趣味题

趣味题假设在n进制下,下面等式成立 567*456 = 50216,n的值为多少()?A.12     B.9    C.16     D.18解:1、        假设它是n进制,我们先将左右两边的等式展开。2、        两边同时对n取余。3、        两边同时除以n,然后再对n取余。具体操作如下图:...

2018-05-01 20:56:59 454

原创 Const的使用

Const的使用规则Const:定义常变量,不能写,只能读。1、        数据类型对于const而言是透明的。例:int const cfh = 100 等价于 const int cfh = 1002、        const用于封锁直接修饰的内容,将该内容变为只读。例:constint cfh = 100;         只读 const 修饰cfhcfh = 200;     错误...

2018-05-01 20:24:16 173

原创 指针加减指针与数字( + and - )

今天要记录一个很重要的知识点那就是指针加减一个数和指针加减指针。1、指针 + 一个数     √2、指针 - 一个数     √3、指针 + 指针      ×4、指针 – 指针       √由上图可知,指针加指针是不可行的。1、指针加减数那指针加减一个数表示什么意思呢,若加的数字为n,则它的意思为加n个单元格,但是他需要调整,调整的权重为sizeof(指针去掉一个*)练习如下:(1)加法:in...

2018-04-07 17:40:28 1510

原创 C语言处理数字(判断数字的位数、顺序输出数字、逆序输出数字)

学习了处理数字的办法,如何判断一个数是几位数,如何将他顺序输出,如何将他逆序输出。在生活中,用处特别大。1、判断数字位数。首先,我们来看一下如何判断给出的数是几位数。次判断方法由两句核心语句组成:intcount = 0; while(n !=0)                                           //判断他是一个非零的数 {  count++;         ...

2018-04-07 14:47:33 9457 2

空空如也

空空如也

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

TA关注的人

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