我正在尝试返回从数据库加载的Person对象但应用程序停止并且我没有收到任何错误消息我只得到Thread 1: Stopped at breakpoint 3
这是我的班级:
+ (Person *)searchPersonByName:(NSString *)personName
{
// Set up sqlite statement
sqlite3_stmt *db_stmt = nil;
NSString *sqlQuery = [NSString stringWithFormat:@"SELECT name, id FROM person WHERE name LIKE '%%%@%%'",personName];
//Convert the sqlQuery string to char
const char *sqlQueryConverted =[sqlQuery UTF8String];
int prepareSqlQuery = sqlite3_prepare_v2( [[DatabaseManager sharedDatabaseManager] getDb], sqlQueryConverted, -1, &dbStatement, NULL);
Person *person = [Person alloc];
//Run the query
while ( sqlite3_step(db_stmt) == SQLITE_ROW )
{
const char *name = (const char *)sqlite3_column_text(db_stmt, 0);
int personId = sqlite3_column_int(db_stmt, 1);
//Convert the returnedElement char to string
NSString *nameString = [[[NSString alloc] initWithUTF8String:name] autorelease];
[person initWithName:nameString _id:personId];
}
return person;
}
我在这一行中得到错误(程序停止):[person initWithName:nameString _id:personId];
并且没有堆栈跟踪。
我想我不完全理解客观c的工作原理。几个星期前我开始用这种语言开发。
提前致谢。
答案 0 :(得分:2)
断点是您设置为停止执行的代码中的标记,因此您可以逐行浏览代码以查看发生的情况。这不是错误....只需删除断点(由行左侧的一个小蓝色标记指示...向右拖动直到它消失)。
答案 1 :(得分:1)
您已打开断点
点击它关闭它。
看起来应该是这样的