【发布时间】:2023-03-08 08:03:01
【问题描述】:
我通过重载基类的 new 和 delete 运算符创建了自己的内存管理器。重载的运算符维护一个内存分配的链接列表,我还存储分配的文件和行号。它也适用于多重继承,因为删除运算符总是接收正确的内存地址(即我从“新”返回的地址)。我获取对象的内存地址(即第一个父对象的内存地址)的最佳方法是什么?
我想创建在运行时可以返回分配文件和行号的方法。对于多重继承,“this”指针可能不会指向正确的内存地址(有时偏移 8 个字节)。我理解为什么它是偏移的,但我正在寻找一种方法来可靠地计算新运算符最初返回的正确内存地址。
【问题讨论】:
标签: c++