unix core 问题定位-基础知识

博客介绍了C++函数调用的入栈机制,指出C++函数调用和C一样是从右到左入栈。以exa.foo(12)为例,先压入12,再压入对象exa的首地址,成员函数通过this值明确工作对象,static成员函数除外。

一,基础知识:

C++函数调用和c一样是从右到左入栈的,例如:

exa.foo(12);

则首先被压进12,然后在此函数被调用的地方压进对象的exa的首地址被压进(放在si),因为它是被选中的对象的首地址所以也被压进来了,记住此对象的首地址对应于this的值,正因为调用每个成员函数时候this都被压栈,所以成员知道它工作在哪个对象上,这样我们总能看到,在对象的成员调用之前压栈的次数等于参数的个数加一(除了static成员函数,它没有this)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值