
C++
文章平均质量分 81
嘻嘻兮
Stay hungry,Stay foolish
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ 虚继承
对于虚继承而言,是用于解决其在多重继承时出现的二义性问题,所以首先我们先来看看多重继承时会出现的问题 //家具类 class CFurniture { public: CFurniture() { m_nPrice = 0; } virtual ~CFurniture() { printf("virtual ~CFurni...原创 2020-07-06 22:35:02 · 825 阅读 · 0 评论 -
C++ 虚函数
对于虚函数而言,这篇博客主要侧重于理解虚函数的实现机制,也就是如何实现的多态? 在C++中,使用virtual关键字声明的函数为虚函数。当类中有虚函数时,编译器会将该类中所有虚函数的首地址保存在一张表中,这张表也称为虚函数地址表(虚表),在我们代码层面可以理解为函数指针数组。同时编译器还会在类中添加一个隐藏数据成员,该成员称为虚表指针,该指针也就是用于保存前面所说的虚表首地址。 好了,下面就先...原创 2020-04-19 20:21:01 · 752 阅读 · 0 评论 -
C++ 继承
对于继承,我们先不说概念。下面我还是先用C模拟并借助汇编的方式来理解它,侧重于学习继承的内存模型。 我们先来看代码,设计三个类,People类,Teacher类,Student类 struct Person { int age; //年龄 int sex; //性别 }; struct Teacher { int age; //年龄 int sex; //性...原创 2019-08-10 19:14:11 · 892 阅读 · 0 评论 -
C++ 权限控制
首先,先来谈谈为什么会有权限控制这一东西?看如下代码 struct Test { int a; int b; }; int main() { Test test; test.a = 2; test.b = 3; test.a = 4; system("pause"); } 这段代码是不是写起来特别爽,一直写一直爽。好了,此时假设对于这...原创 2019-08-05 23:41:30 · 791 阅读 · 0 评论 -
C++ 构造和析构
啥是构造和析构,下面我们还是从C语言的角度来学习C++,简述构造和析构语法的设计由来。 先看如下代码: struct Test { int a; int b; }; int main() { Test test; test.a = 5; test.b = 7; printf("%d %d",test.a,test.b); return...原创 2019-08-04 19:10:17 · 664 阅读 · 0 评论 -
C语言到C++的改进
下面总结下C语言到C++后的一些改进,主要偏语法上哈 1. 类型敏感 //C and C++ unsigned int i = -1; // ok //C unsigned int i = {-1}; // ok //C++ unsigned int i = {-1}; // err int转换到unsigned int需要收缩转换 //C float f = {3.14}; ...原创 2019-08-04 01:03:34 · 590 阅读 · 0 评论 -
C语言到C++的过渡
C++是由C演变过来的,两者必定是有联系的。这篇博客主要是过渡C,引出一些C++的基础概念,下面我会用C来模拟并借助汇编的方式来帮助大家更好的理解C++。 typedef struct Base { int a; int b; }Base; int getMax(Base base) { return base.a >= base.b ? base.a :...原创 2019-08-03 17:42:58 · 345 阅读 · 0 评论