
C++学习
文章平均质量分 59
风住尘香花已尽0.0
继续加油!
展开
-
C++内存布局及动态内存分配
C++内存布局及动态内存分配细节原创 2022-05-31 12:29:17 · 533 阅读 · 1 评论 -
C++类与对象(三)---友元、内部类
友元由于我们对成员变量都要进行封装,我们想要用封装后的成员变量时编译器就会报错,为了满足这一需求就产生了友元。class A{ friend class B;//友元标识private: int _a; int _b;};class B{public: void fun(const A&a) { cout << a._a << endl; }private: int i;};B类就可以访问A类中的私有成员。因为cout的输出流对原创 2022-05-31 12:25:02 · 177 阅读 · 0 评论 -
C++类与对象(二) --- 初始化列表、隐式类型转换、静态成员函数及变量
初始化列表成员变量若为以下形式&引用、const变量、自定义成员类型,这些必须在定义时初始化的类型。我们就要采用初始化列表对这些类型的成员变量进行定义。初始化列表可以理解为:对对象成员变量进行定义。初始化列表只能写一次,定义也只能定义一次。其他类型的变量可以在初始化列表进行初始化,也可以在函数体初始化。class A{public: A(int a,int b, int c) :_a(a) ,_c(c)原创 2022-05-27 10:54:54 · 254 阅读 · 0 评论 -
C++类与对象(一)---this指针、默认成员函数
类与对象class与structclass在C++中默认私有;struct在C++中默认共有公有(public):在类外可以被访问。私有(private):在类外不能被直接访问。成员函数在类内定义的函数默认都是inline,一般情况下短小的函数可以直接在类内定义,长一点的函数声明和定义分离。对象类创建对象的过程叫做类的实例化。C++类创造一个对象的空间和C不同,一个对象的内存空间只有其成员变量的大小,其成员函数是在公共代码段,如图所示。每一个对象的大小只有成员变量的大小。没有成员原创 2022-05-19 11:06:59 · 595 阅读 · 4 评论 -
C++---引用超详细讲解
引用引用的几点要求:引用必须要赋初值,并且不能再改变。一个变量可以拥有多个引用。引用一旦引用一个实体就不可以再被改变。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传可以看到这块报出错误,具体原因是因为变量的传递只能传递给权限更严格的变量!![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在下面的代码处可以看到double类型变量d传递给e编译器报错,这是因为因为每次传值时会产生临时变量,先将值传给临时变量然后将临时变量再传递进行传递。[外链图原创 2022-05-13 12:16:35 · 861 阅读 · 2 评论 -
C++初识---缺省及重载
缺省参数也叫做默认参数,当没有参数时会使用参数的默认值。缺省分为:全缺省半缺省:必须从右往左缺省,并且是连续的声明和定义不能同时出现缺省声明和定义如果是分开的话,只能在声明时缺省,因为声明是在头文件中,在函数编译中展开而定义在链接阶段才会进行函数的重链接。int f(int a = 10, int b = 20)//全缺省 int f(int a, int b = 20)//半缺省如果声明和定义是在两个文件中,由于编译只在当前文件进行,所以要对函数进行声明,并且缺省必须在声原创 2022-05-12 10:29:37 · 512 阅读 · 1 评论 -
数组的动态创建
数组的动态创建数组有两种创建方式,一种是直接创建int arr[2]={1,2};int arr1[]={1,2,3,4};int arr2[5;]还有一种是用new动态申请空间进行创建int a;int* p = new int [a];delete[]p;用new在堆区申请空间必须要记住delete[],不然可能会造成泄露。并且如果new的是一个数组必须要用delete[],如果new的是一个变量则用delete进行删除,因为new其实是一个指针指向创建出来的区域的第一个变量,所原创 2021-09-25 15:30:46 · 1693 阅读 · 0 评论