Вам нужен только 1 VC в качестве места назначения segue с переменной, которую вы установили из prepare
method
let arr = [YourModel(name:"ppp",age:11),YourModel(name:"ppp",age:14)]
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
performSegue(withIdentifier: "YourSegue", sender: arr[indexPath.row])
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "YourSegue" {
let des = segue.destination as! DetailVC
des.item = sender as! YourModel
}
}
struct YourModel {
let name: String
let age: Int
}
class DetailVC:UIViewController {
var item:YourModel?
}