![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 50
雨于鱼
期待工作的大三学生。。。。
展开
-
c++之常识
1、我用的版本具体我不是很清楚,头文件摒弃了.h的写法。2、&这个符号不一定是取地址,也可能是引用。3、c++是面向对象的语言,而c是面向过程的,但是我在c语言讲解里也实现了 面向对象。4、c++即c的扩展版,它兼容c语言,只是有些地方是不一样的。5、封装:把对象的属性和方法结合成一个独立的系统单位,并尽可能隐藏对象 的内部细节。6、抽象:抽象的过程是对具体问题进行概括的过程,...原创 2018-05-04 10:33:39 · 161 阅读 · 0 评论 -
c++之异常处理
一、定义 执行一个函数的过程中发现异常,可以不用在本函数内立即进行处理,而是抛出该异常,让函数 的调用者直接或间接处理这个问题。 c++中异常处理机制有3个模块组成:try(检查),throw(抛出),catch(捕获)二、使用 异常捕获的匹配规则: try块里面抛出的那种类型异常,则catch里面捕获哪种异常,一般情况下,类型必须完全匹配,但 以下3中情况可以...原创 2018-05-08 14:18:13 · 95 阅读 · 0 评论 -
C++之static变量的使用
一、定义 static顾名思义为静态变量,用static修饰的变量或者函数在生命周期和作用域上都会 有所不同。我们在下面的例子中来依次分析。二、使用 1、类的静态成员class A{ public : static int b;};int A::b = 0;//类中静态成员记得要初始化,告诉编译器给静态成员分配内存,不然会报错int main(){ A a; ...原创 2018-05-08 13:32:38 · 3377 阅读 · 0 评论 -
c++之抽象类(纯虚函数)的使用
一、定义 当一个类中有纯虚函数时我们称这个类为抽象类,抽象类不能直接定义为对象要通过继承的 方式来同过子类定义对象,但是抽象类可以定义指针。二、使用 1、抽象类和接口类的区别 (1)、c++中我们所说的接口,表示对外提供的方法,提供给外部调用。也是以类的形式提 供的,但一般该类只具有成员函数不具有数据成员。 (2)、抽象类即可以包含数据成员有可以包含方法。 ...原创 2018-05-08 07:42:08 · 1633 阅读 · 0 评论 -
c++之new和delete的使用
一、定义 首先先明确一点,new和delete是c++中用于申请和释放内存的,其次new和delete要成对使用 最后new和delete不能和malloc和free混用二、使用 先搞清楚使用new时c++内部的机制 1、当初始化一个对象时 new--->operator new--->malloc--->构造函数 2、当初始化若干个对象时 ...原创 2018-05-08 07:00:10 · 1945 阅读 · 0 评论 -
C++之强制类型转换
一、定义 这里要了解的是c++中的类型转换大体上和c语言中类型转换是相同的,但是c++中也有自己的一套转换 方法,它们分别是1、static_cast 2、const_cast 3、dynamic_cast 4 、reinterpret_cast 二、使用 1、static_cast转换操作符 最常用的类型转换符,将常见的类型进行互相转换,例如 int mai...原创 2018-05-07 22:17:36 · 87 阅读 · 0 评论 -
c++之泛型编程
一、定义 当你的算法不需要改变时,只是数据类型变化,一般情况下我们还是需要定义两个不同的函数体 但是引进了泛型编程之后数据类型和算法就分离了,这就是泛型编程的好处。二、使用 先举一个例子: 现在我们有两种参数需要来经过同一种算法来处理,假设两种数据类型为int和string,需要经过Swap 算法:template <typename T>void Sw...原创 2018-05-07 18:05:07 · 201 阅读 · 0 评论 -
C++之三目运算符
一、定义 条件运算符是唯一一个有三个操作数的运算符,所以又称为三元运算符。 一般的形式为(a>b)?a:b二、使用 我们先来说一下c++中的三目运算符和c语言的三目运算符有什么不同,c语言中的三目运算符返回的是一个值 而c++中的三目运算符可以返回一个值也可以是一个变量。 下面我就这两种用法来各举一个例子:int main(){ int a=1,b=2; ...原创 2018-05-07 10:11:03 · 1780 阅读 · 0 评论 -
c++之运算符的重载
一、定义 为什么要重载运算符? 在c++里面的一些基本类型其运算“+-*/”等等,而你自己用class定义的类并不能进行这些基本的基本 运算,这就是为何要重载运算符,非常重要。 运算符重载的实质: 运算符重载的实质就是函数重载或函数多态。运算符重载是一种形式的C++多态。目的在于让人能用同名 的函数来完成不同的基本操作。运算符函数形式:operator p(ar...原创 2018-05-07 09:38:54 · 159 阅读 · 0 评论 -
c++之多态
一、定义 我们首先要明白多态的产生条件:1、继承关系的出现 2、父类虚函数被子类重写 3、父类指针或者引用被使用 多态产生的一个基本条件我认为是:父类的指针可以指向子类的对...原创 2018-05-06 21:52:07 · 112 阅读 · 0 评论 -
C++之构造函数,析构函数,拷贝构造函数
一、定义 构造函数:是在一个定义在类里面的函数,它的作用是在你创建这个类的对象时被自动调用。 如果你自己定义了则调用自己定义的,否则调用默认的。 析构函数:是一个在类里面定义的函数,它的作用是在你的类对象死亡时被调用删除这个类对 象同样的你自己定义了则调用自己的,否则调用默认的。 在了解拷贝构造函数之前先...原创 2018-05-06 21:07:23 · 854 阅读 · 0 评论 -
c++之重载、重写、重定义
一、定义 重载:重载指的是在同一个类中发生的,两个成员函数拥有相同的名称,但是他们的参数不一样。 但是不能通过返回类型来判断。 重定义:重定义也叫隐藏。它是发生的子类父类中的,即它的发生条件是继承。子类重新定义和父 类相同的函数他们的参数列表可以不同。(重定义的是父类的非虚函数) 重写:也叫覆盖。它也是发生在子类中的,即...原创 2018-05-06 10:32:49 · 223 阅读 · 0 评论 -
c++之引用
一、定义 首先我们得先了解间接赋值的三个条件: 1、定义两个变量(一个实参一个形参)。 2、建立关联,实参取地址给形参。 3、通过形参去间接修改实参的值。 引用的实质是给同一个内存空间起了别名,而引用就是帮我们简化了间接赋值的后两个条件。二、使用 1、常引用 例如:int a;const int &Ra = a; ...原创 2018-05-04 20:00:45 · 121 阅读 · 0 评论 -
c++之继承
一、定义 继承是在两个不同类中出现的一种关系,我习惯叫被继承类为父类,而继承类为子类,当 然也有叫基类和子类的。二、使用 1、继承关系: public:使用该继承关系,父类中的成员权限不会被更改即public被继承为public,protected 被继承为protected,private也会被继承为private。 protect...原创 2018-05-04 16:51:47 · 90 阅读 · 0 评论 -
c++之class
一、定义 class是类定义时的关键字,和c语言中的struct很像。 二、使用 class Teacher { public: int age; char name[10]; private: protected : }; public...原创 2018-05-04 14:15:30 · 4179 阅读 · 0 评论 -
c++之namespace
一、定义 namespace实际上就是一个由程序设计者命名的内存区域,程序设计者可以根据需要指定一些 有名字的空间域,把一些全局实体分别放在各个命名空间中,从而与其他全局实体分隔开来。二、使用 namespace ns1 { int a; int b; } namespace ns2 { int a; ...原创 2018-05-04 12:48:19 · 94 阅读 · 0 评论 -
排序之插入排序
一、定义 插入排序的复杂度为O(n*n),而它的改进算法为希尔排序,所以在了解希尔排序之前非常有必要了解插入排序。 算法思想:假设有n个无序数,令i=1;j=i;在第一趟的时候我们首先用变量tem保存位置i的数,然后比较j位置和 j-1位置数的大小(默认为升序)若j-1位置的数大于j位置的数,则将j-1位置 的数直接赋给j位置,然后将tem存 放的值赋给j-1,第一趟完毕此...原创 2018-05-08 20:03:20 · 105 阅读 · 0 评论