[英]Why do I need to provide method implementation when I extend a protocol in iOS Swift?
我想擴展一些協議,同時編寫代碼編譯器會引發錯誤: please provide implementation of method
。 但是為什么我必須提供協議方法的實現? 這應該在符合該協議的類中完成。
extension MyDelegate {
func addNewMethod() { }
}
protocol MyDelegate {
func myMethod()
}
根據文檔 ,似乎協議擴展只存在於給現有協議默認的方法實現上,因此,並非每個使用該協議的類都必須實現相同的方法並具有相同的主體,從而為您節省了很多復制粘貼,排序類似於協議的靜態/類函數
聽起來您不想要擴展,而是原始協議中的可選功能
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.