我正在尝试制作一种用于存储视频或图像+声音的简单数据类型,但是在枚举MovieItem
和上出现编译错误“使用未声明的类型” ImageItem
。怎么了?
struct MovieItem {
let movieUrl: NSURL
}
struct ImageItem {
let imageUrl: NSURL // UIImage?
let soundUrl: NSURL
}
enum Item {
case MovieItem(MovieItem) // Undeclared type: MovieItem
case ImageItem(ImageItem) // Undeclared type: ImageItem
}
我认为您将MovieItem
a用作名称以及将struct
其用作内的case
标签使编译器感到困惑Item
。如果您更改case
标签的名称,则它应该起作用:
struct MovieItem {
let movieUrl: NSURL
}
struct ImageItem {
let imageUrl: NSURL // UIImage?
let soundUrl: NSURL
}
// Changed MovieItem to Movie and ImageItem to Image and it works
enum Item {
case Movie(MovieItem)
case Image(ImageItem)
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句