1.单个委托 (测试只能绑定一个方法,绑定多个方法时执行最后一个绑定方法)
声明:DECLARE_DELEGATE_OneParam(MyDelegate, FVector);
MyDelegate delegate_CameraMove;
执行:
delegate_CameraMove.Excute(offset);
绑定:
delegate_CameraMove.BindUObject(this, &AGodCameraCode::CameraMove);
移除:
delegate_CameraMove.UnBind();
2.多播委托
声明: DECLARE_MULTICAST_DELEGATE_OneParam(OnMoveCameraDelegate, FVector);
OnMoveCameraDelegate _Delegate_MoveCamera;
执行:_Delegate_MoveCamera.Broadcast(mousePos);
添加:cameraMoveDelegate = _Delegate_MoveCamera.AddUObject(this, &AGodCameraCode::CameraMove);
移除:_Delegate_MoveCamera.Remove(cameraMoveDelegate);