( variable = &anotherVar )的大小是多少?
int y = 10; // the size of y is 4 bytes
int & x = y; // what is the size of x that receives the address of y发布于 2012-03-24 12:47:11
未指定引用是否需要存储(C++11 8.3.2.4)
对于这种情况
int y = 10;
int & x = y;编译器可能不会使用任何额外的内存;它只会将x视为y的别名。一旦x被初始化,它就不能被重新赋值来引用另一个变量,所以编译器可以这样做。
如果引用被用作函数参数或在类/结构中使用,那么它可能会在内部作为指针实现,因此大小将为sizeof(int*)。当然,如果一个带有引用参数的函数是内联的,那么就不需要额外的内存。
https://stackoverflow.com/questions/9849041
复制相似问题