我的父/基類如下:斯威夫特類型轉換爲兒童類
class Base {
...
}
另外,具有如下的子類:
class Child: Base {
...
func someFunc() {
}
}
我已經創建的實例父類如下:
let baseObj = Base()
現在,我想從父對象中調用Child類的方法。所以我有一個像下面的代碼:
let childObj = baseObj as! Child
childObj.someFunc()
但是,這是給我運行崩潰象下面這樣:
Could not cast value of type 'PCTests.Base' (0x11c6ad150) to 'PCTests.Child' (0x11c6ab530).
你的'Child'類是(儘管它的名字)*不是*子類的'Base'。你已經定義了兩個無關的類。我不清楚你想達到什麼目的。 –
@MartinR:對不起,代碼有錯誤。我已經更新了相同的內容。感謝您指點。但我的實際代碼實際上是父類的孩子。 – DShah