码迷,mamicode.com
首页 > 其他好文 > 详细

2隐形的指针

时间:2018-06-24 00:34:21      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:编译器   size   方式   数据   避免   返回值   创建   结构体   语言   

编译器会自动把结构体的地址,通过ecx传到函数内部隐藏创建的一个this指针上.
如果我们的函数,没有返回值,没有使用结构体,编译器还会给我们传递进去吗?

我们来验证一下.


1.this指针是编译器默认传入的,通常会使用ecx进行参数的传递。
2.无论函数有没有使用结构体中的数据,this指针都会存在,你用不用,编译器都会传进去。
3.this指针是编译器隐藏创建的,所以我们起其他变量名或者参数名的时候,一定要避免和this指针重名。


学习过汇编语言和C语言的好处,可以通过这种反汇编的方式,来研究一个语法在内存中的本质。

2隐形的指针

标签:编译器   size   方式   数据   避免   返回值   创建   结构体   语言   

原文地址:https://www.cnblogs.com/xiaodaxiaonao/p/9218937.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!