摘要: 解析:成员函数会用this指针自动隐藏第一个操作数(左操作数) 1、把全局函数转化成成员函数,通过this指针隐藏左操作数。 Test add(Test &t1,Test &t2) ==> Test add(Test & t2); 2、把成员函数转化成全局函数,多了一个参数 vpid printAB 阅读全文
posted @ 2018-06-13 21:34 CTHON 阅读(3472) 评论(0) 推荐(0)
摘要: 前言 c++对象模型可以概括为以下2部分 1、语言中直接支持面向对象程序员设计部分,主要涉及如构造函数、析构函数、虚函数、继承(单继承、多继承、虚继承)、多态等待。 2、对于各种支持的底层实现机制 在c语言中,“数据”和“处理数据的操作(函数)”是分开来声明的,也就是说,语言本身并没有支持“数据和函 阅读全文
posted @ 2018-06-13 17:51 CTHON 阅读(534) 评论(0) 推荐(0)
摘要: const修饰类的成员函数const修饰变量一般有两种方式:const T *a,或者 T const *a,这两者都是一样的,主要看const位于*的左边还是右边,这里不再赘述,主要来看一下当const修饰类的成员函数时,成员函数有什么特点。https://www.cnblogs.com/ctho 阅读全文
posted @ 2018-06-13 17:01 CTHON 阅读(69577) 评论(2) 推荐(8)
摘要: 0.static修饰类中成员,表示类的共享数据 1.static类成员 在C++primer里面说过,static类成员不像普通的类数据成员,static类数据成员独立于一切类对象处在。static类数据成员是与类关联的,但不与该类定义的对象有任何关系。这句话什么意思?就是static不会想普通类数 阅读全文
posted @ 2018-06-13 16:36 CTHON 阅读(4575) 评论(0) 推荐(0)
摘要: 函数调用过程解析 func里的a存储在调用fun函数时开辟的栈空间里,这块栈只在调用func时对func可用,调用结束后返回的a,其实是暂存在寄存器里的(一般情况下是eax),而返回到main里时,main又会把返回的值拷贝到自己所有的栈空间里(在这里是以临时变量的形式)。所以不管是func还是ma 阅读全文
posted @ 2018-06-13 10:56 CTHON 阅读(1365) 评论(0) 推荐(0)