滴水 1.c++类 this指针 笔记+指针
1.结构体带参数传递
将结构体的数据压入堆栈中
然后进入函数内进行处理
2.结构体指针传递
将this指针压入进去 来查找 a b数据
3、函数可以放在结构体里面,也可以放在结构体外面
放入进去后 但是我们打印出的大小还是8字节 证明函数不占结构体的内存大小
汇编中压入了两次参数
一次给函数的参数 一次就是默认传递 哪怕没有参数也会压入
我们函数没有参数时,也会压入,那个便是this 指针‘
总结
1、将函数定义到结构体内部,就是封装.
2、编译器会自动传递结构体的指针给函数.
带有函数的结构体,称为类.
结构体里面的函数,称为成员函数.
什么是this指针
this指针的特点:
1、你用或者不用,它就在那里
2、参数个数确定的时候,用ecx来传递
3、参数个数不确定的时候,最后一个传递(参见不定长参数)
作业
1.
1、设计一个结构体,有两个Int类型的成员X,Y 在结构体内部定义4个函数实现对X Y的加法功能. struct scalss { int a; int n; int add() { return (*(int*)this); } };
2.
参数传递不同
3.空结构体大小
c++ 1
c0
4.
本文来自博客园,作者:逆向狗,转载请注明原文链接:https://www.cnblogs.com/Agtw/p/16920258.html