 //“结果都将是 Int? 类型，通过 Optional Binding，我们就能知道初始化是否成功，并安全地使用它们了
 //我们在这类初始化方法中还可以对 self 进行赋值，也算是 init 方法里的特权之一
 //“在新版本的 Swift 中，对于可能初始化失败的情况，我们应该始终使用可返回 nil 的初始化方法，而不是类型工厂方法。”
-
+*/
 
 // -----------------------------
 /*


// -----------------------------

//static 和 class
//在非 class 的类型上下文中，我们统一使用 static 来描述类型作用域。这包括在 enum 和 struct 中表述类型方法和类型属性时。
//在这两个值类型中，我们可以在类型范围内声明并使用存储属性，计算属性和方法

}

//在Swift 1.2及之后，可以在class中使用 static 来声明一个类作用域的变量
//class MyClass { static var bar: PointTest? }


//如果想在 protocol 里定义一个类型域上的方法或计算属性的话，使用static进行定义。

protocol MyProtocol {
    static func foo() -> String
}

struct MyStruct: MyProtocol {
    static func foo() -> String {
        return "MyStruct"
    }
}

enum MyEnum: MyProtocol {
    static func foo() -> String {
        return "MyEnum"
    }
}

class MyClass: MyProtocol {
    static func foo() -> String {
        return "MyClass"
    }
}
 */

// -----------------------------

/*
//初始化返回nil
/*
 在Swift中默认情况下初始化方法是不能写return语句来返回值的，也就是说我们没有机会初始化一个optional的值。
