对解除引用的指针的引用地址是否与指针地址相同?
在 C++ 中,是否保证对解除引用的指针的引用地址与指针地址相同?
In C++, is the address of a reference to a dereferenced pointer guaranteed to be the same as the address of the pointer?
或者,用代码编写,以下断言是否保证始终成立?
Or, written in code, is the following assertion guaranteed to always hold true?
SomeType *ptr = someAddress;
SomeType &ref = *ptr;
assert(&ref == ptr);
推荐答案
是的,这是正确的,并且永远正确.
Reference 只不过是它所指类型的别名.它没有单独的存在,它总是与它所指的那个人联系在一起.
Reference is nothing but an Alias of the type which it is referring to. It does not have a separate existence, it is always tied up to the one it is referring.
相关文章