Получить EXC_BAD_ACCESS при попытке создать экземпляр NSSpeechSynthesizer - PullRequest
1 голос
/ 17 октября 2011

Я получаю «Программа получила сигнал: EXC_BAD_ACCESS», и я не могу понять, почему

Вот мой интерфейс

#import <Cocoa/Cocoa.h>


@interface AppController : NSObject {
    NSSpeechSynthesizer *speechSynth;
}

и реализация

#import "AppController.h"


    @implementation AppController

    - (id)init
    {
        self = [super init];

         // HERE I GET Program received signal: EXC_BAD_ACCESS
         speechSynth = [[NSSpeechSynthesizer alloc] initWithVoice:nil];
        return self;
    }
    @end

Я включил инфраструктуру Какао и AppKit

1 Ответ

0 голосов
/ 17 октября 2011

Вы должны всегда проверять, является ли self не ноль в init методах, прежде чем изменять значения iVars:

- (id)init
{
    self = [super init];
    if (self)
    {
        speechSynth = [[NSSpeechSynthesizer alloc] initWithVoice:nil];
    }
    return self;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...