func exchange<T>(inout param1:T,inout param2:T){
let tmp = param1
param1 = param2
param2 = tmp
}
var p1 = "15"
var p2 = "40"
exchange(&p1, param2: &p2)
struct Stack<ItemType> {
var items:[ItemType] = []
mutating func push(param:ItemType) {
self.items.append(param)
}
mutating func pop()->ItemType{
return self.items.removeLast()
}
}
//整型栈
var obj1 = Stack<Int>()
obj1.push(1)
obj1.pop()
//字符串栈
var obj2 = Stack<String>()
obj2.push("HS")
obj2.pop()
extension Stack{
func getArray() -> [ItemType] {
return items
}
}
class MyClass {
}
//只有MyClass的子类可以进行Stack栈的创建
struct Stack<ItemType:MyClass> {
var items:[ItemType] = []
mutating func push(param:ItemType) {
self.items.append(param)
}
mutating func pop()->ItemType{
return self.items.removeLast()
}
}
protocol MyProtocol {
//实现协议时才指定类型
associatedtype ItemType
var param:ItemType {get set}
}
class MyClass:MyProtocol {
//由于Swift可以自动识别类型 这是MyProtocol中的ItemType为Int
var param: Int = 0
}
//T和C都要遵守整型协议
class MyClassTwo<T,C where T:IntegerType,C:IntegerType> {
var param1:T
var param2:C
init(param1:T,param2:C){
self.param1=param1
self.param2=param2
}
}
var obj3 = MyClassTwo(param1: 1, param2: 1)
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有