C++
文章平均质量分 84
甜芒芒
无
展开
-
C++ 里 class 与 struct 的区别
1. 用 class 和 struct 定义类时,类的访问权限不同。 class 定义的类访问权限为 private struct 定义的类访问权限为 public2. 继承时,用 class 和 struct 定义的派生类, 类的默认继承权限不同。 用 class 定义的派生类默认权限为 private 用 struct 定义的派生类默认权限为 public3. 在模板...原创 2018-07-14 18:53:48 · 285 阅读 · 0 评论 -
C++实现一个通用的加法函数
1.使用函数重载【缺陷】只要有新类型出现,就要重新添加对应函数除类型外,所有函数的函数体都相同,代码的复用率不高如果函数只是返回值类型不同,函数重载不能解决一个方法有问题,所有的方法都有问题,不好维护2.使用公共基类【缺陷】-借助公共基类来编写通用代码,将失去类型检查的优点-对于以后实现的许多类,都必须继承自某个特定的基类,代码维护更加困难3.使用宏函数【缺陷】不是函数,不进...原创 2020-05-26 14:21:53 · 4704 阅读 · 0 评论 -
多态
1. 多态概念该词最初来源于希腊语,意思是同一事物具有多种形态,在C++语言中多态有着更广泛的含义。2. 多态举例例如演员在不同剧中演绎不同的角色,类似于同一事物的多种形态。3. 多态分类1. 静态多态(静态链编译,静态绑定,早绑定)#include<iostream>using namespace std;//1.静态多态(静态链编译,静态绑定,早绑定int Add(int l...原创 2020-05-26 14:22:05 · 202 阅读 · 0 评论 -
继承
继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能。这样产生新的类,称派生类。 继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程继承格式:继承权限&访问限定符继承方式基类的public成员基类的protected成员基类的private成员 继承引起的访问控制关系变化...原创 2018-07-03 16:36:28 · 169 阅读 · 0 评论 -
类的6个默认的成员函数
构造函数1. 概念 构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时,由编译器自动调用,在对象的生命周期内只调用一次,保证每个数据成员都有一个合适的初始值2. 构造函数特性· 函数名与类名相同· 没有返回值· 新对象被创建时,由编译器自动调用,且在对象的声明周期内仅调用一次· 构造函数可以重载,实参决定了调用那个构造函数· 无参构造函数和带有缺省值的构造函数都认为是缺省的...原创 2018-07-04 08:59:54 · 1260 阅读 · 0 评论 -
this指针
this 指针 当我们进入一个房子之后,可以看见房子里的桌子,椅子、地板等,但是看不到房子的全貌。对于一个类的实例来说,你可以看到它的成员函数、成员变量,但是实例本身呢?this是一个指针,它时时刻刻指向这个实例this 指针是成员函数里面的一个隐藏指针,指向了调用该函数的对象本身。1. 特性· this指针的类型:类类型* const· this指针并不是对象本身的一部分,...原创 2018-06-27 15:48:53 · 196 阅读 · 0 评论 -
C++的函数重载实现原理
- **汉语中往往一词多义,可以根据语境判断其含义,即该词被重载了。如:**`- **然而只有返回值类型不同,其他均相同时不嫩构成函数重载,如下例。**```//以下两个函数只是返回值不同,并不构成函数重载int Add(short left, short right){ return left + right;}short Add(short left, short left){ return ...原创 2018-07-04 09:00:30 · 7690 阅读 · 0 评论