为什么 Swift 不允许在扩展中存储属性?
Why does Swift not allow stored properties in extensions?
我一直在努力寻找在扩展中实现存储 属性 的最佳方法,并遇到了这个问题:Swift extension stored properties alternative。但是,我没有在讨论或其他任何地方找到原因。 Swift 中不允许存储属性是否有原因?如果是,原因是什么?
扩展用于扩展现有 class 的功能而不改变内存结构。它或多或少是语法糖。想象一下,您可以添加存储的属性和方法,它会是什么?除了继承,别无其他。因此,如果您想添加新的属性和方法,只需继承 class.
我一直在努力寻找在扩展中实现存储 属性 的最佳方法,并遇到了这个问题:Swift extension stored properties alternative。但是,我没有在讨论或其他任何地方找到原因。 Swift 中不允许存储属性是否有原因?如果是,原因是什么?
扩展用于扩展现有 class 的功能而不改变内存结构。它或多或少是语法糖。想象一下,您可以添加存储的属性和方法,它会是什么?除了继承,别无其他。因此,如果您想添加新的属性和方法,只需继承 class.