初始化方法的参数具有默认值时的问题

Issue when the initialization method's parameter with default value

我正在我的项目中为某个class创建一个初始化方法,基本上我想包装一个本地通知class。

因为我的本地通知只有一种声音,我想在 class 初始化时将其设置为默认值,如下所示:

    override init(notificationTitle:String, subtitle:String, sound = UNNotificationSound.init(named: AppSettingManager.share.loadFocusNotificationSound()), categoryId:String ) {

    super.init()
}

因为声音参数的值存储在 NSUserdefault 中,我想在 class 初始化时设置声音的值。

然而,Xcode 抱怨

Unnamed parameters must be written with the empty name '_'

我该如何解决这个问题?还有其他方法可以解决这个问题吗?提前致谢。

sound =更改为sound:

override init(notificationTitle:String, subtitle:String, sound: UNNotificationSound.init(named: AppSettingManager.share.loadFocusNotificationSound()), categoryId:String ) {
    super.init()
}