将两个类分配给同一个变量,这可能吗



我有两个属于同一协议的类。

class CameraModel:CaptureProtocol {
}
class ScannerModel:CaptureProtocol {
}

在应用程序上的某个点上,我想在变量上加载一个或另一个

var model = preferences.digitizer == .camera ? cameraModel : scannerModel

有没有办法做到这一点,即使使用if

定义协议数据类型

var model: CaptureProtocol = preferences.digitizer == .camera ? cameraModel : scannerModel

或使用计算属性

var model: CaptureProtocol { preferences.digitizer == .camera ? cameraModel : scannerModel }

注意:您只能从模型变量中访问协议属性。

相关内容

  • 没有找到相关文章

最新更新