zoukankan      html  css  js  c++  java
  • There is no type initializer in Swift----One answer is to use static, it is the same as class final.

    “Unlike stored instance properties, you must always give stored type properties a default value. This is because the type itself does not have an initializer that can assign a value to a stored type property at initialization time.”

    Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks


    You could use a type property which default value is a closure. So the code in the closure would be executed when the type property (or class variable) is set.

    But class stored properties not yet supported (tested in Xcode 8).

    One answer is to use static, it is the same as class final.

    Good link for that is

    Setting a Default Property Value with a Closure or Function

    Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks


    Code example:

    Prints

    start

    setting default property value with a closure

    So it is lazy evaluated.

    https://stackoverflow.com/questions/24137212/initialize-class-method-for-classes-in-swift

  • 相关阅读:
    谈谈SpringFramework与IoC依赖查找
    监控微博、论坛的“棱镜计划”
    输出质数的方法改进
    参数解构
    直接插入排序
    理解迭代
    异常处理
    函数
    continue语句
    break语句
  • 原文地址:https://www.cnblogs.com/feng9exe/p/11225790.html
Copyright © 2011-2022 走看看