2015-05-30 3 views
0

Я работаю над проектом, и все работает нормально. Я добавил следующее расширение класса:Быстрая ошибка компиляции из-за расширения класса

extension CGFloat { 
static func random() -> CGFloat { 
    return CGFloat(Float(arc4random())/Float(UInt32.max)) 
} 
static func random(#min: CGFloat, max: CGFloat) -> CGFloat { 
    assert(min < max) 
    return CGFloat.random() * (max - min) + min 
} 
} 

И у меня внезапно было 21 ошибка. Снимок экрана ниже. enter image description here

Кто-нибудь знает, как это решить?

EDIT:

мне удалось решить эту проблему, по-видимому, что я должен импортировать UIKit выше всего остального. Теперь у меня все еще есть проблема, что приложение отлично работает на симуляторе, но не работает на реальном устройстве. В нем говорится, что существует ошибка сегментации: 11, и что он не может построить obj-c модуль UIKit.

+0

Просто добавьте расширение к одному из моих проектов. Это соответствует. Вы сделали все там ритуалы с чистой сборкой, удаленные производные данные, перезапустив Xcode? В противном случае это похоже на некоторые настройки компилятора. –

+0

я сделал. И теперь его еще хуже, даже если я удалю расширение, я получаю 20 эротов такого рода. Кроме того, вы знаете, как вы начинаете вводить функцию, и если она существует, она всплывает. Теперь это тоже перестало. – TruniTr

+0

Звучит странно. Используете ли вы некоторые оптимизированные библиотеки, такие как cocos2d, или что-то подобное на низком уровне? Думаете, это может быть какая-то 32-битная и 64-битная вещь? –

ответ

1

В случае добавления UIKit начал работу. Может быть так же просто, как добавление ...

import Foundation 

наверху заставило бы его работать?

0

Хорошо, мне удалось решить эту проблему: все, что мне нужно было сделать, это уменьшить мою цель развертывания с 8.3 до 8. Не знаю, почему это так.

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