Struct Swift3中的可选结构

Struct Swift3中的可选结构,struct,swift3,optional,Struct,Swift3,Optional,我想声明一个存储可选结构的变量,如下所示: struct my_struct{ var x: Double var y: Double } var my_variable = my_struct? 这个语法在Swift2中是正确的,对吗?不幸的是,它不再在Swift3中工作。实现这一目标的“新”方法是什么 struct my_struct{ var x: Double var y: Double } var my_variable:my_struct? 请

我想声明一个存储可选结构的变量,如下所示:

struct my_struct{
    var x: Double
    var y: Double
}

var my_variable = my_struct?
这个语法在Swift2中是正确的,对吗?不幸的是,它不再在Swift3中工作。实现这一目标的“新”方法是什么

struct my_struct{
    var x: Double
    var y: Double
}

var my_variable:my_struct?
请注意,在Swift中,类型通常是大写的,并按惯例使用驼峰式大小写,例如

struct MyStruct {
    var x: Double
    var y: Double
}

var myVariable: MyStruct?
请注意,在Swift中,类型通常是大写的,并按惯例使用驼峰式大小写,例如

struct MyStruct {
    var x: Double
    var y: Double
}

var myVariable: MyStruct?

该语法在Swift 2中也不起作用

首先,让我们使用符合Swift的名称

struct MyStruct { ... }
您有两个选择:

  • myVariable:MyStruct?
    声明一个没有值的可选结构(
    nil

  • myVariable:MyStruct?=MyStruct()
    声明一个可选的空结构

注意:考虑到必须为第二窗体中的结构的属性指定默认值,或者使用成员式初始化器或编写自定义初始化器。


附言:不要用期权作为不在乎的不在场证明。Swift鼓励您尽可能多地使用非可选类型。

该语法在Swift 2中也不起作用

首先,让我们使用符合Swift的名称

struct MyStruct { ... }
您有两个选择:

  • myVariable:MyStruct?
    声明一个没有值的可选结构(
    nil

  • myVariable:MyStruct?=MyStruct()
    声明一个可选的空结构

注意:考虑到必须为第二窗体中的结构的属性指定默认值,或者使用成员式初始化器或编写自定义初始化器。


附言:不要用期权作为不在乎的不在场证明。Swift鼓励您尽可能多地使用非可选类型。

请注意,Swift的惯例是对类型名称使用
大写
,对其他所有名称使用
小写
——不要使用
snake\u case
。我强烈建议您阅读–声明语法在这里有广泛的介绍。请注意,Swift的惯例是对类型名称使用
大写
,对其他所有名称使用
小写
–不要使用
蛇壳
。我强烈建议您阅读–声明语法在这里有广泛的介绍。谢谢您的帮助!谢谢你的帮助!