C++
wry_sunny_
这个作者很懒,什么都没留下…
展开
-
C语言和C++的基本区别
C语言与C++可以说是天差地别,所以我今天主要阐述一些基本的区别。1、函数参数的默认值在C语言中我们在函数的参数列表中写入几个参数就必须在调用此函数时给参数值,但是在C++中给了函数参数具有默认值的方法。在函数的声明或者定义的地方,给函数的参数加上默认的赋值,在函数调用处,可以不必给该参数传值,会默认的传入默认值。函数的默认值只能给一次。注意:参数默认值的赋值,必须从右向左,依次...原创 2019-01-12 17:37:05 · 376 阅读 · 0 评论 -
C++中的类和对象
C语言与C++均是两门非常高深及优秀的语言,二者具有类似的地方,但是相较与他们之间的区别来说呢,也就不那么重要了,C++在C语言的基础上增加了面向对象的编程模式。面向对象:用非常接近实际领域术语的方法把系统构造成“现实世界”的对象。一、C++类的定义类的关键字:classC++的主体是以类和对象构成的,利用类来将“现实世界”中的各个对象给抽象出来。由class关键字以及类的名称以及...原创 2019-01-11 23:23:08 · 163 阅读 · 0 评论 -
C++中的模版
一、函数模版函数模板不是一个实在的函数,编译器不能为其生成可执行代码。定义函数模板后只是一个对函数功能框架的描述,当它具体执行时,将根据传递的实际参数决定其功能。函数模板类型自推:能够根据参数类型自动推演出模板类型参数。1、语法格式template<类型形式参数表>返回类型 函数名(形式参数表){ }2、函数模板的实例化编译时期根据模板调用的类型方式,自...原创 2019-01-18 16:33:21 · 430 阅读 · 0 评论 -
继承与多态
一、继承C++中继承是指在子类(派生类)中需要获得父类中的成员变量和成员方法时,继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。1、基本语法:格式:子类的类名+:+访问修饰符+父类的名字2、访问修饰符:public:公共访问修饰符,即...原创 2019-01-13 23:18:43 · 175 阅读 · 0 评论 -
编译链接过程
在谈编译链接过程之前我们需要了解一下虚拟地址空间以及程序在编译链接过程时经过了什么步骤。虚拟地址空间之前在进程空间的博客中详细介绍过了,详见:https://blog.csdn.net/wry_sunny_/article/details/86651871一、虚拟地址空间上图就是32位系统中4G虚拟地址空间的分布情况.text 段:指令段,存放的是指令代码,在程序中,我们把局部变量...原创 2019-03-19 21:08:23 · 375 阅读 · 0 评论 -
数据结构——栈(stack)
一、顺序栈栈(stack)是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它...原创 2019-03-16 15:43:53 · 718 阅读 · 0 评论 -
数据结构——队列(queue)
一、顺序队列队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又...原创 2019-03-16 16:00:21 · 305 阅读 · 0 评论 -
两个栈实现一个队列,两个队列 实现一个栈
之前我们对栈和队列的存储结构进行了一些了解,并且实现了栈和队列的一些操作,例如入栈(入队列),出栈(出队列)等。但是我们今天要讨论的是一个经典的面试题,那就是利用两个栈实现一个队列,两个队列实现一个栈。要想实现这个结构,我们必须先得了解栈和队列的存储结构,以及他们各自的特性,这样我们才能解决问题。之前栈和队列的实现我已经写过了,今天就直接利用STL库中的stack和queue。一、两个...原创 2019-03-17 15:09:59 · 482 阅读 · 0 评论 -
函数调用堆栈的过程
函数在进行调用时会产生开栈和清栈的操作,那么就来介绍一下函数调用堆栈的过程吧首先,利用一个小例子来研究这个过程:#include<iostream>int Fun(int a,int b){ int tmp = 0; tmp = a + b; return tmp;}int main(){ int a = 10; int b = 20; int ...原创 2019-07-23 20:54:56 · 826 阅读 · 0 评论