Что значит для значения быть "_type_type"? - PullRequest
0 голосов
/ 24 января 2019

Я уже несколько раз сталкивался с этой ошибкой, и я не уверен, что это значит. Я пытался найти решение в Интернете, но ни один из них не рассматривал проблему .type специально.

Это моя текущая ошибка:

private func setUpCache() {
    let urlCache: URLCache = URLCache(memoryCapacity: MEMORY_CAPACITY, diskCapacity: DISK_CAPACITY, diskPath: "myDiskPath")
    URLCache.shared = URLCache //<-Cannot assign value of type 'URLCache.type' to type 'URLCache'
}

Я видел эту ошибку и с другими типами. Что означает для Int и тип Int.type или String как string.type и т. Д.

1 Ответ

0 голосов
/ 24 января 2019

URLCache - это тип (это класс). URLCache.shared должен иметь назначенный ему экземпляр класса. Но вы пытаетесь присвоить сам класс (который имеет тип URLCache.type).

Ваша плохая строка должна быть:

URLCache.shared = urlCache // your urlCache variable, not the URLCache type

Всякий раз, когда вы видите подобное сообщение о SomeType.type, это означает, что вы пытаетесь назначить фактический тип вместо экземпляра типа.

let num: Int = Int // Cannot convert value of type 'Int.Type' to specified type 'Int'

конечно должно быть:

let num: Int = 42 // Assign an actual Int value or variable of type Int
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...