这段代码引起内存泄漏?
typedef unsigned __int8 uint8_t
在类的构造函数里
for (int ix = 0; ix < 16; ix++)
{
m_data1[ix] = (uint8_t *)malloc(w * h * sizeof(uint8_t));
m_data2[ix] = (uint8_t *)malloc(w/2 * h/2 * sizeof(uint8_t));
m_data3[ix] = (uint8_t *)malloc(w/2 * h/2 * sizeof(uint8_t));
}
溪沟函数这样
for (int ix = 0; ix < 16; ix++) {
if (m_data1[ix] != NULL) {
free(m_data1[ix]);
m_data1[ix] = NULL;
}
if (m_data2[ix] != NULL) {
free(data2[ix]);
m_data2[ix] = NULL;
}
if (m_data3[ix] != NULL) {
free(m_data3[ix]);
m_data3[ix] = NULL;
}
}
上面的代码都执行过了
boundscheck说m_data1,m_data2,m_data3都没释放