此代码在 iPhone 和 iPhone 模拟器上运行良好,但在 iPad 上运行时会使模拟器崩溃:
const char *createsql = [MYClass GetDBCreationString];
sqlite3_stmt *crts;
if (sqlite3_prepare_v2(database, createsql, -1, &crts, NULL) == SQLITE_OK) {
int success = sqlite3_step(crts);
if (success != SQLITE_DONE) {
///problem
}
sqlite3_finalize(crts);
sqlite3_reset(crts);
}
它是创建将包含该特定类的 SQLLite 表的代码。它每次都在重置线上崩溃,但它确实成功地创建了表。
在 iPhone 和 iPhone 模拟器上它工作正常。finalize 和 reset 是多余的吗?如果是这样,为什么它在 iPad 上崩溃但在 iPhone 上却可以正常工作?