sqlite3_exec是否存在内存泄漏?
问题描述:
我正在使用SQLite存储数据.我正在写包装器类,我想知道:如果(res!= SQLITE_OK)和errorMsg会显示在屏幕上,将导致内存泄漏?
I'm using SQLite to store my data. I'm writing wrapper class, and I want to know: will be a memory leak if (res != SQLITE_OK) and errorMsg will be displayed to the screen??
所以我需要做free(errorMsg);在如果"陈述中?谢谢!
So do I need to do free(errorMsg); in the "if" statement? Thanx!
-(int) executeQuery: (NSString *) sqlQueryStr
{
char *errorMsg = NULL;
int res = SQLITE_ERROR;
res = sqlite3_exec(database, [sqlQueryStr UTF8String], NULL, NULL, &errorMsg);
if (res != SQLITE_OK)
{
sqlite3_close(database);
NSLog(@"executeQuery Error: %@", errorMsg);
database = NULL;
return res;
}
return res;
}