gpt4 book ai didi

c++ - 当前对象的引用存储在内存中的什么位置?

转载 作者:行者123 更新时间:2023-11-30 01:25:20 25 4
gpt4 key购买 nike

我有一个简单的问题。我知道在编译程序后,当我调用一个函数时,会生成一个调用堆栈,其中包含参数、局部变量的空间、返回点和我负责的寄存器。

但是在像 C++ 这样的面向对象语言中,编译器在哪里存储对当前对象的引用? object->instanceMethod() 会将对象指针像参数一样存储在调用堆栈中?

我知道这个问题很笼统,谢谢你的回答

最佳答案

它是实现定义的,但在实践中你会发现大多数(所有?)C++ 编译器生成的代码将 this 指针作为隐藏的第一个参数传递给函数,因此你可以访问它而无需在方法签名中明确指定它。

关于c++ - 当前对象的引用存储在内存中的什么位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12422068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com