在内存中如何处理引用
How references are handled in memory
class B {
};
class A {
A(B& b):_b(b)
B& _b;
};
int main() {
B b;
A a(b);
char* x = reinterpret_cast<char*>(&a);
}
我正在创建一个基于对象的字节值的哈希函数。我想知道对象a的字节是否会保存b,或者它们是否会保存引用(指针)?
当您声明A::_b
为引用时,它将"保存"一个引用。因此,如果按字节顺序检查a
,对象a
不包含b
的数据。
顺便说一下,您忘了在强制转换中使用地址操作符
相关文章:
- 处理类内的回调时,必须调用对非静态成员函数的引用
- std::remove() 按预期处理文字,但不能与取消引用的迭代器一起工作
- 当使用CreateObject从VBScript引用DLL时C++如何处理DLL版本?
- 引用计数智能指针如何避免或处理引用计数器溢出?
- 在闭包中,如何通过存储在内存中的指针或引用类型捕获可变性或用现代函数式语言进行处理?
- 如何在类中进行 c++ 多线程处理(将线程引用保留为成员 var)
- C++处理取消引用语法的泛型类
- 处理受向 std::vector 添加元素影响的引用
- 转发引用是否可以使用别名模板进行别名处理
- 未定义的引用C++队列模板处理字符串
- 对boost asio完成处理程序的rvalue引用
- 有没有一种方法可以使用引用而不是指针来处理相互包含数据的类
- 我正在处理一个 c++ 项目,但在通过引用传递 rect0 对象时遇到问题
- CPP 中的字符串引用处理
- 处理对“vector_binary_operation”类中“表达式”的引用,而无需不必要的副本
- C# 与C++通过引用处理传递
- 处理文件中的数据引用/指针
- C++异常处理通过引用传递:抛出的地址与捕获的地址不同
- 在内存中如何处理引用
- 如何编写一个拷贝赋值操作符来处理引用