一般情况,防止垃圾值,我们在定义类对象或者结构体对象的时候不指定其属性的值的时候,就是调用其默认构造函数,因为此时没有给属性赋值的话可能会出现垃圾值的问题,所以我们在默认构造函数内部将当前对象的所有属性都设置为0, -- 所以在默认构造函数中我们一般会给属性0值。
struct People{
int age;
int high;
People(){
memset(this,0,sizeof(People)); // 每当调用默认构造函数的时候,对对应对象的属性设置为0
}
};
同理在拷贝构造函数或者赋值构造函数或者clone()函数中也可以使用memcpy()进行赋值参数是一样的,但是需要注意深浅拷贝的问题。