C++
yqybest
呐
展开
-
C++|递归
//用递归求一个正数的开平方,精确到小数点后3位 #include <stdio.h>double sq(double d, double r1, double r2){ double diff = ((r1 + r2) * (r1 + r2)) / 4.0 - d; if (diff >= -0.000001 && diff <= 0...原创 2021-01-18 16:14:35 · 144 阅读 · 0 评论 -
C++|类的友元
作用:不在类中的函数可以通过对象名访问类的私有和保护成员分为友元函数与友元类友元函数:友元函数:不属于任何类的函数声明为当前类的友元(一个普通的函数)友元成员:其他类的成员函数声明为当前类的友元友元类一个类能访问另一个类的私有成员不具有传递性...原创 2021-01-18 16:14:23 · 239 阅读 · 1 评论 -
C++|数组
什么是数组一组同类型数据的有序集合/一段连续被等分的内存空间一些名词数组单元: 数组中的每个变量数组元素: 数组单元的数据值数组名: 这些同类变量聚合后统一的名字,首元素的内存地址如何使用先声明,后使用引用: 只能引用数组元素,而非整个数组作为函数参数时: 传送的是数组首地址(数组名)存储地址是连续的二维数组存储: 按行存储初始化static int a[10]={0...原创 2021-01-18 16:13:45 · 154 阅读 · 1 评论 -
C++|对象的生存期
四种存储类别auto:局部变量时默认类别;动态生存期static:可用于全局/局部;静态生存期extern:全局变量默认类别register:寄存器类别,分配内存不够时转化为auto静态生存期(全局寿命)全局变量所具有的生存期具有全局寿命函数内部想要有全局寿命,需要加上staticstatic int i;动态生存期(局部寿命)函数块中声明的,没有加static的对...原创 2021-01-18 16:08:30 · 263 阅读 · 0 评论 -
C++|BOOL
与0的比较假设BOOL型变量名为flag,它与零值比较的标准If语句为:if(flag)//表示flag为真,if(!flag)//表示flag为假其他的都属于不良风格:if(flag == TRUE)if(flag == FALSE)if(flag == 0)if(flag == 1)...原创 2021-01-18 16:08:12 · 117 阅读 · 0 评论 -
C++|多态性
什么是多态接口有多种形态,能根据操作环境的不同采用不同的处理方式编译时多态(静态绑定)shape *ps;//静态类型shape*shape *ps=new circle;//静态类型shape*作用: 根据类型匹配等特征确定某一个同名函数到底是要调用哪一段函数原理: 代码中声明的类型=对象的静态类型通过: 函数重载/运算符重载基类指针指向派生类,调用时仍然是基类函数gstudent s2;//子类对象声明ps=& s2;//!!基类指针可以指向派生类对象!!ps->原创 2021-01-18 16:07:43 · 87 阅读 · 0 评论 -
C++|动态分配内存
动态分配内存建立了一个基本类型变量int *a=new int(2);等价于int *a;//a是基本int型变量a=new int(2);//用2初始化动态分配了用于存int数据的内存空间,并将初值2存入空间,然后将首地址赋给指针aint *a=new int();//括号为空,表示用0对该对象初始化delete a;//指针名,释放指针所指向的内存空间建立了一个类的对象...原创 2021-01-18 16:06:30 · 229 阅读 · 0 评论