构造函数中慎用memset
原创当我写一个小程序时,我会运行一个系统循环。我发现存在严重的内存泄漏,并且内存不断增长。
经过多次审核,最终确定了问题所在,代码结构大致如下:
struct myobj
{
myobj()
{
memset(this,0,sizeof(myobj));
}
int n;
//...其他成员
string s;
}
定义了一个具有许多类型成员的结构,但懒得逐个分配值。因此,在构造函数中memset函数。
问题就在这里,因为这个函数也会清除所有string成员的内存空间会影响对象的解构,从而导致内存泄漏。
因此,当对象具有复杂类型成员时,不要使用memset使用指针成员初始化时要小心!
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
上一篇:办公桌前不做四件事 下一篇:一个提供缺失的dll的网站
相关文章
最新文章
- The Temporary Pleasure of Conversation 5分钟前
- GMRT Update Free for Commercial Use and Source Access 6分钟前
- New Open-Source Cybersecurity Platform Uses AI Agents to Hunt Threats 26分钟前
- Conway's Game of Life 1小时前
- Denmark abandons plans to ditch Microsoft Office after technical problems 1小时前
- Commission on Federal Paperwork: Drawings by Carol 1小时前
- US executives quit $25B gas venture over claims of secret Russian control 1小时前
- eMudhra faces a bigger test of public trust after security lapse 2小时前
- The BBC Strikes Back 2小时前
- 一个不推销语言的编程教师:从Forth到Decker 2小时前
itfan123

