C/C++
文章平均质量分 72
无
佬酒
较劲
展开
-
函数调用的过程分析
局部变量占用的内存是在程序执行过程中”动态”地建立和释放的。这种”动态”是通过栈由系统自动管理进行的。当任何一个函数调用发生时,系统都要作以下工作:通过如下代码进行“一”的分析: 首先进入主函数,系统为主函数开辟一个栈帧,依次入栈 x=10(占4字节),y=20(占4字节),res=0(占4字节),执行到z=fun(x,y);调用子函数fun(),开辟子函数fun的栈帧,先将y的值赋值给b,b=20入栈,然后将x的值赋值给a,a=10入栈,然后将主函数的栈底指针入栈,然后将主函数z=fun(x,y);后的指原创 2022-12-04 21:36:03 · 1613 阅读 · 1 评论 -
c++ 左值、右值
注:有移动对象先调动移动构造来构架将亡值对象,而不调用普通的拷贝构造,如果没有移动构造,就会调用普通拷贝构造来构造将亡值对象。由于将亡值是一个不具名的对象,所以不能用左值引用,只能用右值引用,并且通过右值引用,也增长了将亡值的生存周期。左值引用:需要引用一个有名字的变量,不能引用不具名的对象。对堆内存构建了一次,如果没有移动构建,就会构建三次。右值引用:只能引用字面常量,不具有名字。右值:不可以取它的地址。左值:可以取它的地址。转载 2022-11-25 17:06:23 · 605 阅读 · 0 评论 -
explicit 说明符
explicit指定构造函数或转换函数 (C++11 起)或(C++17 起)为显式,即它不能用于和explicit (原创 2022-11-24 10:32:58 · 891 阅读 · 0 评论 -
noexcept说明符/运算符
与相同。原创 2022-11-24 10:24:51 · 1516 阅读 · 0 评论 -
c++复习——名字粉碎
如果返回类型,函数名,参数类型都相同,但是参数个数不同也未必能够进行重载,如果没有缺 省值或者默认值的情况下可以重载,如果有默认值则不能确定。所以调用的时候无法确定哪个函数因此要注意二义性问题。原创 2022-09-19 23:44:10 · 791 阅读 · 0 评论 -
C++复习 ——内联函数
1)内联函数的处理方式是在函数的调用点直接代码展开。在计算机系统下,假如频繁的调用,就会造成较大的时间开销(这里时间开销指的是:现场保护和现场恢复,栈帧的开辟和清除栈帧的开销)。2)在release版本内联函数才会起作用,才会将代码直接展开成一条条指令,在debug版本不起作用,仍然会按照函数的方式进行。答:只能对非常小的函数加inline,如果函数内部有循环、if语句等,加上inline,系统会报错。为了消除函数调用的时空开销,C++ 提供一种提高效率的方法,②没有if语句、循环语句。原创 2022-09-19 23:26:49 · 747 阅读 · 0 评论 -
面向对象——继承(c++)
继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础,上进行扩展,增加功能。这样产生新的类,称派生类。继承呈现了面向对象程序设计的层次结构。体现了由简单到复杂的认识过程。百度百科(继承)通过继承(inheritance)的机制可对类(class)分层,提供类型/子类型的关系。C++通过类派生(classderivation)的机制来支持继承。被继承的类称为基类(baseclass)或超类(superclass),新产生的类为。......原创 2022-07-26 23:06:24 · 2732 阅读 · 1 评论 -
C语言——结构体(全)
一、结构体的设计C语言提供了基本的数据结构,例如 char 、short 、int 、float....等类型;这些偶称为内置类型。怎样设计出来属于自己的类型?程序员可以使用结构体来封装一些属性,设计出新的类型,在C语言中称为结构体类型。结构体的定义形式为struct 结构体名{ 成员列表(可以是基本的数据类型,指针,数组或其他结构类型)};举个例子来说吧;客观事务(实体)是复杂的,要描述它必须从多方面进行;也就是用不同的数据类型来描述不同的方面;用学生实体来说:..原创 2022-04-19 21:32:01 · 110467 阅读 · 25 评论 -
C++实现---学生选课系统
一、项目要求(1)学生有自己的 ID、姓名 、年级 、选课信息等;(2)学生可以进行对已选课程的增删改查;(3)每个课程有自己的学分,授课老师等;二、模块分析分析:我们首要的首要的任务就是先对模块进行划分;从项目的要求出发;该系统可以大致分为两大类;课程类(用来保存每门课程的信息,例如编号,名称,学分,授课教师);学生类(用来保存每个学生的信息;例如编号,名字,性别。年级,分数);对于这两个类来说;他们拥有相同的一点;就是编号和名称;所以可以脱出一个类用其他两个类来继承它原创 2022-04-20 17:56:12 · 21595 阅读 · 59 评论 -
c++中引用及指针详解
这里写目录标题1、指针1.1、什么是指针指针的本质指针与地址程序中如何声明指针以及如何使用运算符&和*1.2、指针有什么作用指针与函数参数指针与数组字符指针与函数2、引用2.1、什么是引用2.2、引用用什么作用2.3、引用的作用3、const3.1指针与const3.2、引用与const1、指针1.1、什么是指针指针的本质通俗来说 指针是一个变量 (保存变量地址的变量)像常见的:int a=10;指针与地址首先 ,我们通过一个简单 的示意图来说明内存是如何组织的。通常机器都有一系列连原创 2022-01-23 00:08:54 · 9361 阅读 · 5 评论