0
在C++ mutable
關鍵字中是否存在等價的swift?我有一個實現協議的結構,包括一個非變異函數,但是實現在內部會改變內部狀態。有沒有什麼辦法可以讓這個類的成員var變爲可變的,而不需要改變協議定義,使得函數mutating
?相當於C++ mutable關鍵字的Swift結構?
例如
public protocol P {
// f is semantically unmutating
func f
}
public struct S : P {
// f is semantically unmutating, but does change some internal state
public func f {
v += 1
}
private var v: Int // How to mark this as mutable for internal purposes?
...
}