深入解析Swift语言中的协议

2020-01-08 22:38:09王旭

   }
   
   func markssecured() -> String {
      return "(stname) has scored (marks)"
   }
}

let studdet = classc()
studdet.stname = "Swift"
studdet.marks = 98
studdet.markssecured()

println(studdet.marks)
println(studdet.result)
println(studdet.present)
println(studdet.subject)
println(studdet.stname)


当我们使用 playground 运行上面的程序,得到以下结果。

 


98
true
false
Swift Protocols
Swift

不同变形方法要求

复制代码
protocol daysofaweek {
   mutating func print()
}

 

enum days: daysofaweek {
   case sun, mon, tue, wed, thurs, fri, sat
   mutating func print() {
      switch self {
      case sun:
         self = sun
         println("Sunday")
      case mon:
         self = mon
         println("Monday")
      case tue:
         self = tue
         println("Tuesday")
      case wed:
         self = wed
         println("Wednesday")
      case mon:
         self = thurs
         println("Thursday")
      case tue:
         self = fri
         println("Friday")
      case sat:
         self = sat
         println("Saturday")
      default:
         println("NO Such Day")
      }
   }
}

var res = days.wed