cpp对含有map的结构体使用memset清零导致的崩溃

⌚Time: 2024-02-03 09:13:53

👨‍💻Author: Jack Ge


struct MM{

 int a;

 std::map<int,int> b;

};



...

MM m;

memset(&m,0,sizeof(m));

std::map<int,int> c;

m.b = c;//崩溃

m.b.insert(std::make_pair(1,2));//崩溃

如果结构体中有map,不能使用memset。否则清零map地址,之后再进行插入等操作必定崩溃