差异初始化
问题描述:
答
在第一个你明确表示它是一个类/结构属性,而在第二个它是隐式的。但是有一个很大的区别:如果有一个具有相同名称的本地变量(例如传递给init的参数),它将优先并隐藏类/结构属性。
作为一个偏好问题,我总是倾向于使用明确的,使用self
。另外,通过这样做,我避免了当我想访问类属性时发生的常见错误,并且我正在使用局部变量或函数参数。