2014-10-01 3 views
0

Я не могу построить свой проект из-за ошибки (Segmentation Fault 11). С комментируя вещи, я обнаружил, что ошибка возникает по этой линии:Xcode 6.0.1 Ошибка сегментации 11

typealias functionType = ([Expression], [String: NSNumber], inout AnyObject) -> Expression!; 

Если я удалить typealias и использовать необработанный тип вместо этого, ошибка становится еще брошенной, так что ошибка, вероятно, не typealias, но закрытие.

Edit:
Если я заменяю тип Expression с AnyObject ошибка получает еще брошенный. Но если я просто объявляю typealias, я могу использовать его для глобальной переменной, но не для переменной-члена.

+0

Это не сокрушительный на моей машине , объявляю ли я 'Expression' протоколом, классом, структурой или перечислением ... Есть что-то о' Expression', хотя это, вероятно, вызывает это. Можете ли вы разгласить немного больше о 'Expression'? – milos

+0

На стороне примечания вам не нужна точка с запятой в конце, и 'functionType' будет лучше с капиталом' F', это было бы не так уж и одиноко, урод, среди других типов ... Кроме того, из любопытства, почему вы возвращаете неявно развернутый необязательный (выражение «!»)? – milos

+0

@milos Expression - класс, который содержит некоторую информацию о математическом выражении Я возвращаю выражение! потому что результат может быть равен нулю, но я не люблю использовать Swifts??, поэтому я использую параметр inout обычно для Bool, и если Bool истинно, я останавливаю программу – trandang

ответ

0

Я также получил эту ошибку (после онлайн-учебника), я удалил весь код, который я ввел ранее, чтобы получить эту ошибку, и проблема сохраняется, мне кажется, что проект был поврежден. Я не эксперт, поэтому, пожалуйста, прочтите этот отчет с осторожностью.

Это произошло только после того, как появилась ошибка HUD говоря sourceKitService Разбился ...

вероятно обижая код был такой:


  override func viewWillAppear(animated: Bool) { 
    if var storedtoDoItems: AnyObject! = NSUserDefaults.standardUserDefaults().objectForKey("toDoItems") { 

     toDoItems = [] 
     for var i = 0; i < storedtoDoItems.count; ++i { 
      toDoItems.append(storedtoDoItems[i] as NSString) 
      } 
     println(storedtoDoItems) 
    } 

    taskTable.reloadData() 
} 

Смежные вопросы