是否可以用memset来初始化一个类?
答:不可以!
其实这是习惯C风格的人使用C++时非常容易犯的一个习惯性错误!熟悉C++的人不会,因为C++有构造函数,为什么会可笑的想用memset?
这里说不可以,不是说真的不可以,而是说真的别这样!有些情况下是可以用的,因为类只是一个说明,对象也是这个类的一个具体化了的内存块,当你memset一个对象时,它把这块对象内存初始化了,在不影响内部结构的情况下是不会有问题的,这就是为什么有时候使用memset一个对象时不会出错的原因。
借用一篇文章(http://hi.baidu.com/i_miss_you_all/blog/item/c281fd3e43fccde555e7231b.html)中的一段话: