Проблема вернуть объект из метода цели c - PullRequest
0 голосов
/ 08 июня 2011

Я пытаюсь вернуть объект 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. Я начал развиваться на этом языке пару недель назад.

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 08 июня 2011

Точка останова - это маркер в коде, который вы задали, чтобы остановить выполнение, чтобы вы могли шаг за шагом проходить через код, чтобы увидеть, что происходит. Это не ошибка .... просто удалите точку останова (обозначенную маленьким синим маркером слева от линии ... перетащите ее вправо, пока она не исчезнет).

1 голос
/ 08 июня 2011

у вас включены точки останова

enter image description here

Выключите его, щелкнув по нему.

enter image description here

Это должно выглядеть так

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...