c++进段语法
文章平均质量分 55
一起慢慢变强
既可以朝九晚五,又可以浪迹天涯
展开
-
c++中的异常
目录处理异常的方式cc++异常的使用异常的抛出和捕获异常的重新抛出异常安全异常规范自定义异常体系c++标准库中的异常体系异常的优缺点处理异常的方式c:1、终止程序,使用assert2、返回错误码,c中一般用errno接收c++抛异常,面向对象的语言都是用抛异常来解决错误信息当一个函数发现自己无法处理错误信息时候,就会使用抛异常来直接或间接处理这个错误信息try:try中为保护的代码,假如有错误,将会抛出异常,后接多个catch原创 2022-05-01 21:58:40 · 715 阅读 · 0 评论 -
c/c++中的内存管理
目录c++中内存管理的方式new和delete操作符的使用方式operator new和operator delete函数new和delete的原理内部实现内置类型自定义类型c++中内存管理的方式在c语言中,我们拥有malloc和free等函数可以对内存进行动态管理但是总体来说不是很方便,所以c++拥有了一种新的方式来对内存进行管理:通过new和delete操作符来对内存进行动态分配new和delete操作符的使用方式new操作符的使用方式:#incl原创 2022-04-15 18:51:47 · 939 阅读 · 0 评论 -
c++中的模板进阶
目录非类型的模板参数模板参数的定义:非类型的模板参数定义:验证非类型的模板参数是个常量:类模板的参数可以是缺省值:模板的特化函数模板的特化类模板的特化模板的分离定义分离定义:解决方法:模板的优点和缺点优点缺点非类型的模板参数模板参数的定义:模板参数分为类型模板参数和非类型的模板参数类型模板参数:class或typename后面接的参数类型名称非类型的模板参数:用一个常量来作为模板的参数,在模板中可将这个参数当做常量来使用非类原创 2022-05-01 19:11:04 · 1685 阅读 · 0 评论 -
c++中的友元
友元的概念:友元分为友元函数和友元类友元提供了一种突破封装的方式,但是这种方式会破坏类的封装性,所以我们要尽可能少用友元函数:友元函数的定义#include<iostream>using namespace std;class Date{ friend void print(const Date& d); //声明一下这个友元类public: Date(int year = 1, int month = 1, int day ...原创 2022-04-15 09:25:08 · 734 阅读 · 0 评论 -
c++中的内部类的概念
目录内部类的概念内部类的特性内部类的概念概念:假如一个a类定义在另一个b类的里面,那么这个a类就是b类的内部类内部类是一个独立的类,不属于外部类,外部类不可以访问内部类的成员变量所以内部类是外部类的友元,可以通过外部类的对象参数来访问外部类的所有成员,但外部类不能内部类的特性class A{public: class B { public: void print(const A& a) //定义一个内部类的对象参数 { cout &l原创 2022-04-15 09:56:14 · 599 阅读 · 0 评论 -
c++中的explicit关键字的作用
目录explicit的概念和作用explicit的概念和作用构造函数不仅可以构造与初始化对象,对于单个参数的构造函数,还具有类型转换的作用#include<iostream>using namespace std;class A{public: A(int a = 0) :_a(a) {}private: int _a;};int main(){ A a; a = 1; //进行了隐式类型转换,因为1和a不是一个类型的,所以会传递一份临时拷贝过去原创 2022-04-15 09:36:21 · 559 阅读 · 0 评论 -
c++中的static定义类中的静态成员函数,和静态成员变量
static成员的概念声明为static的类成员称为类的静态成员,用static修饰的成员变量,称之为静态成员变量class A{public: static int a; //创建静态成员变量};用static修饰的成员函数,称之为静态成员函数class A{public: static int get(){} // 创建静态成员函数};静态的成员变量一定要在类外进行初始化class A{public: static int a; //创建静态成...原创 2022-04-13 22:24:25 · 3045 阅读 · 0 评论 -
c++中的模板初阶
泛类编程学习模板,首先我们需要了解一下什么是泛类编程#include<iostream>using namespace std;int add(int a, int b){ return a + b;}double add(double a, double b) //这两个add构成了函数重载{ return a + b;}int main(){ int a = 1; int b = 2; double c = 3; double d =...原创 2022-04-16 22:06:31 · 524 阅读 · 0 评论 -
c++中新的初始化方式(c++11)--缺省值
目录缺省值的概念和使用缺省值的概念和使用C++11支持非静态成员变量在声明时进行初始化赋值,但是要注意这里不是初始化,这里是给声明的成员变量缺省值class B{public: B(int b = 0) :_b(b) {} int _b;};class A{private: // 非静态成员变量,可以在成员声明时给缺省值。 int a = 10; int* p = (int*)malloc(4); static int n; //静态成员变量不能给缺省值 c原创 2022-04-13 22:30:32 · 753 阅读 · 0 评论 -
c++中多态的虚函数表(虚表),多态原理,动静态绑定
目录虚函数表多态的原理动态绑定和静态绑定虚基表的注意事项和知识点虚函数表多态中的虚函数的调用涉及到了一个虚函数表的知识#include<iostream>using namespace std;class A{public: virtual void f1() {} virtual void f2() {}public: int _a;};class B :public A{public: virtual void f1() {} v原创 2022-04-25 17:28:54 · 983 阅读 · 1 评论 -
c++多态中的抽象类
抽象类的概念在一个类的虚函数后面添加上=0,那么这个虚函数就是纯虚函数包含纯虚函数的类叫做抽象类(接口类),抽象类不能实例化出对象当派生类继承了纯虚函数之后,假如没有重写,那么派生类也不能实例化出对象所以使用纯虚函数可以规范我们进行虚函数的重写#include<iostream>using namespace std;class A {public: virtual int add(int x, int y) = 0 //将基类虚函数,变成纯虚函数,这个类变成抽原创 2022-04-22 18:45:34 · 922 阅读 · 0 评论 -
重载、重写、隐藏的对比
隐藏只要两个类中的函数名相同就构成隐藏转载 2022-04-22 18:17:51 · 81 阅读 · 0 评论 -
c++11中的final和override关键字
目录final关键字final的第二个作用override关键字为了防止我们忘记重写虚函数,c++11提供了2个关键字来帮助我们检查final关键字修饰虚函数,被修饰的虚函数不能被重写class A{public: virtual int add(int x, int y) final { return x + y; }};class B :public A{ int add(int x, int y) //修饰虚函数,被修饰的虚函数不能被重写 {原创 2022-04-22 18:15:46 · 750 阅读 · 0 评论 -
c++中的多态
目录多态的概念多态的构成条件多态中的虚函数虚函数如何实现重写虚函数重写的两个例外多态的概念多态:顾名思义就是多种形态,是不同继承关系的类成员,调用同一函数,产生不同的效果构成多态的目的就是使得不同类型的对象,在完成同一件事情的时候,产生不同的结果静态的多态:函数重载(编译时确定)动态的多态:父类的指针或者引用调用虚函数(运行时确定)多态的构成条件两个条件:1、基类的指针或引用调用虚函数2、必须是虚函数,而且虚函数需要完成重写多态中的虚函数原创 2022-04-22 16:31:53 · 748 阅读 · 0 评论 -
c++中虚继承中的虚基表
接下来我们通过一个简单的案例来讲述一下虚基表的作用#include<iostream>using namespace std;class A{public: int _a;};class B:virtual public A //虚继承了A{public: int _b;};class C:virtual public A //虚继承了A{public: int _c;};class D:public B,public C //多原创 2022-04-20 22:34:30 · 871 阅读 · 0 评论 -
c++中的继承
继承的概念和定义继承的概念:继承是一种使对象复用的有效手段,被继承的类叫做父类(基类),继承类的类叫做子类(派生类)继承的定义:继承的格式:继承的关系:1、继承方式和访问限定符都有三种权限2、假如访问权限和继承方式结合,取权限小的访问方式3、private中的不可见不是说不会被继承,是被继承下来我们不能够去使用它4、假如我们想让外界访问不了基类成员,又想让派生类访问,那么就可以使用protest访问限定符修饰成员5、假如我们不写继承方式,class创建...原创 2022-04-19 20:43:13 · 945 阅读 · 0 评论