当我声明一个变量时,它会被分配到堆栈中的某个内存索引处,对吗?
但是当我声明一个引用变量时,它会指向另一个引用变量的相同索引,所以不需要在堆栈中分配新的空间......
C++ 是如何处理这种情况的?
我的意思是实际上,它有一个包含名称和索引之间关联的表?
编译器做所有的工作?
我希望清楚...如果有人有一些手册或相关资料,我将非常高兴!
谢谢大家,如果我写的英文不好,请见谅!
最佳答案
C++ 标准没有指定 ABI,因此这是实现定义的。但通常的方法是将引用实现为指针,因此在堆栈上分配指针。但是,如果此引用未在任何地方传递,它可能会被优化掉并简单地替换为它指向的变量。
关于c++ - 当我声明一个引用变量时堆栈会发生什么? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28486257/