上来做题(40min)检查如下代码有什么错误 struct XX { std::list<std::string> names; }; void func() { XX *xx = (XX *)malloc(sizeof(XX)); if (xx != NULL) { xx->names.push_back("A"); xx->names.push_back("B"); free(xx); } } 答:一般不用malloc和free对结构体和类分配内存问:错的确实在这里,再问的细一点,为什么这里不能用...