woaidongmao

文章均收录自他人博客,但不喜标题前加-[转贴],因其丑陋,见谅!~
随笔 - 1469, 文章 - 0, 评论 - 661, 引用 - 0
数据加载中……

struct 增加虚析构函数,导致的问题

任何虚函数(析构),都将在成员的前若干个字节,加入一个指针,让成员数据向后移位,如果代码依赖于成员的地址,则会导致问题。

对于一般的struct,析构函数,没必要是virutal 。

去除virutal ,则可以保持POD的位置。

posted on 2010-07-24 15:21 肥仔 阅读(800) 评论(1)  编辑 收藏 引用 所属分类: C++ 基础

评论

# re: struct 增加虚析构函数,导致的问题  回复  更多评论   

同意。虽然struct可以视为class+默认全部成员public,但是实践中最好把struct的使用限制在POD,其他情况宁可写class和public
2012-06-22 14:45 | 徐大侠

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理