Подтвердить что ты не робот

Ошибка компилятора Swift: использование неразрешенного идентификатора 'name'

Я попытался включить класс под названием 'name' и получил ошибку:

Swift Compiler Error: Use of unresolved identifier 'name'

Класс существует и не содержит ошибок компиляции.

4b9b3361

Ответ 1

Может быть несколько возможных проблем.

  • Один из классов имеет Цель тестирования, а другой - нет. Вы должны включать все ваши классы в целевую аудиторию или ни один из них.

  • Если это Objective C class, проверьте, что класс находится в файле заголовка ObjectiveC.

  • Если это подкласс NSManagedObject. Добавьте @objc(className) перед объявлением класса.

  • Если это часть другой структуры, убедитесь, что класс или функция public

Ответ 2

У меня тоже был этот. Вероятно, вы обнаружите, что ваш первый класс включен в ваш модуль тестирования и что "имя" - нет. Просто, если вы включаете класс в тестирование, то каждый класс, который он ссылается, должен быть в тестировании.

Ответ 3

У меня тоже была эта проблема. Я пытался ссылаться на класс 1 в коде класса 2. Моя проблема заключалась в том, что класс 2 имел целевые членства в и B, а в классе 1 только целевые членства в классе A.

Вы можете исправить это, открыв вкладку "Утилиты" (самая правая кнопка на верхней панели окна Xcode) и убедитесь, что те же флажки отмечены для обоих классов в подразделении целевого членства.

Ответ 4

Задача решена с помощью

Цель → Сборка фаз → Скомпилировать источники → Добавление файла класса

Ответ 5

Добавьте еще один список в список.

  1. Если это часть другой структуры, убедитесь, что настройки "Build Active Architecture Only" одинаковы.