多次单一继承后,子类的成员变量和父类的成员变量的内存发生重叠

Sam_xmn 2008-01-03 04:44:13
在AIX的环境下,编译后运行老是core, 用dbx跟踪后发现在子类构造函数的运行的时候,对子类的成员变量赋值,结果父类的成员变量也跟着变了,查看了一下相应的成员变量的地址,发现居然内存的地址重叠了,有谁遇到相应的问题过吗,是不是gmake的选项的问题?
...全文
88 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
没遇见过这个问题,很想知道是什么样的代码能引起.
Sam_xmn 2008-01-03
  • 打赏
  • 举报
回复
成员变量中的指针变量地址是奇数的。。

没描述正确,改正一下
Sam_xmn 2008-01-03
  • 打赏
  • 举报
回复
也不是多复杂的代码,一共继承了四次,每个类有各自的一些成员变量,在编译过程中出现许多重复定义,估计也有可能造成这个现象,编译的选项应该是没有选择字节对齐,成员变量中的指针变量是奇数的(不知道是否理解错误,呵呵)。。
  • 打赏
  • 举报
回复
把能造成这个现象的代码贴上看看看
Sam_xmn 2008-01-03
  • 打赏
  • 举报
回复
顶上来。。

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧