Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
清除Swift中的可选变量_Swift_Variables_Declaration - Fatal编程技术网

清除Swift中的可选变量

清除Swift中的可选变量,swift,variables,declaration,Swift,Variables,Declaration,如果我声明一个空图像: var myImage: UIImage? 然后给它一个值: myImage = UIImage(named: "drawing.png") 以后如何删除该值,将其返回到其原始空状态?如下所示将其值设置回nil myImage = nil 基本上是使UIImage自动指向nil的缩写 因此,要将其重置为原始值,请说: myImage = nil 可选是Swift中的枚举类型;它有两种情况: enum Optional<T> : NilLiteralCo

如果我声明一个空图像:

var myImage: UIImage?
然后给它一个值:

myImage = UIImage(named: "drawing.png")

以后如何删除该值,将其返回到其原始空状态?

如下所示将其值设置回nil

myImage = nil
基本上是使
UIImage
自动指向
nil
的缩写

因此,要将其重置为原始值,请说:

myImage = nil

可选
是Swift中的
枚举
类型;它有两种情况:

enum Optional<T> : NilLiteralConvertible {
    case None
    case Some(T)
    ...
}
enum可选:NilLiteralConvertible{
无案例
案例(T)
...
}

通过将图像分配给
可选
,您已经隐式指定了
.Some(图像)
。要清除它,可以使用
.None
。但是由于
可选
也符合
NilLiteralConvertible
,如果需要更改引用的数据类型,可以使用更简单、更清晰的
nil

将其声明为
AnyHashable

var x: AnyHashable
myImage = UIImage(named: "drawing.png")

@蓝宝石。当然但是看看时间戳,这是第一个。
var x: AnyHashable
myImage = UIImage(named: "drawing.png")