引用变量在堆栈中占用内存吗? intmain() { INTA=45; int&re=a; C++中引用的操作符的CUT< P>地址给出引用对象的地址,而不是引用变量本身的地址。C++规范。< /P> p> >您看到相同的值。C++中的引用的操作符地址< > /p>地址给出了引用对象的地址,而不是引用变量本身的地址。C++规范。< /P>
因此,您可以看到相同的值。引用变量在堆栈中占用内存吗? intmain() { INTA=45; int&re=a; C++中引用的操作符的CUT< P>地址给出引用对象的地址,而不是引用变量本身的地址。C++规范。< /P> p> >您看到相同的值。C++中的引用的操作符地址< > /p>地址给出了引用对象的地址,而不是引用变量本身的地址。C++规范。< /P>,c++,c++11,C++,C++11,因此,您可以看到相同的值。&获取引用对象的地址,而不是引用本身的地址,因此&a和&re的输出是相同的。在典型的实现中,引用本身需要内存,除非进行优化。请参阅实现的文档及其应用程序程序集输出(-SGCC和clang的标志)语言规范不提供任何保证。&采用引用对象的地址,而不是引用本身的地址,因此&a和&re的输出是相同的。在典型的实现中,引用本身需要内存,除非进行优化。请参阅实现文档ation及其汇编输出(-S标志表示GCC和clang)。语言规范不提供任何保证。很难说,因为堆栈本身的存在是由实现定
&
获取引用对象的地址,而不是引用本身的地址,因此&a
和&re
的输出是相同的。在典型的实现中,引用本身需要内存,除非进行优化。请参阅实现的文档及其应用程序程序集输出(-S
GCC和clang的标志)语言规范不提供任何保证。&
采用引用对象的地址,而不是引用本身的地址,因此&a
和&re
的输出是相同的。在典型的实现中,引用本身需要内存,除非进行优化。请参阅实现文档ation及其汇编输出(-S
标志表示GCC和clang)。语言规范不提供任何保证。很难说,因为堆栈本身的存在是由实现定义的。请参阅它可能已被优化掉(尽管通常是的,它确实占用内存)@user3528438:Re“堆栈本身的存在是由实现定义的",你从哪里得到的那个模因?这是胡说。User@user3528438声称他或她在胡说的时候是客观的,并且指出这是胡说是主观的,这是胡说;诉诸情感胡说,但仍然是胡说。很难说,因为堆栈本身的存在是由实现定义的。看到了吗我们已经优化了(虽然通常是的,它确实需要内存)@user3528438:Re“堆栈本身的存在是由实现定义的”,你是从哪里得到这个模因的?这是胡说八道。User@user3528438声称他或她在胡说八道时是客观的,并且指出这是胡说八道是主观的,是胡说八道;诉诸情感胡说八道,但仍然是胡说八道。那么我如何打印引用变量本身的地址呢?@shuboy2014你不能。语言没有为此提供任何工具。@shuboy2014引用是一个别名,可能根本没有存储空间。那么如何打印引用变量本身的地址呢?@shuboy2014您不能。语言对此没有提供任何工具。@shuboy2014引用是一个别名,可能根本没有存储空间。
int main()
{
int a=45;
int& re=a;
cout << &a << endl;
cout << &re << endl;
return 0;
}
Output :
0x61ff18
0x61ff18