[c++] 结构体中有类类型时请不要使用memset来初始化结构体

    技术2022-07-11  100

    前言:

    c++对比c,引入了类,我们可以将类放到结构体中,但是在初始化的时候不可以使用memset,这会破坏类的内部结构,可能会造成崩溃乱码等一系列问题。

     

    解决:

    定义结构体的构造函数来完成初始化,比如:

    struct A{ string id; string name; int salary; char* pc; int a[100]; A(){ id=""; name=""; salary=0; pc = NULL; memset(a,0,sizeof(a)); } } int main() { A* pa = new A(); }

     

    Processed: 0.010, SQL: 9