初学Objective-C读Jitsi iOS代码,(JitsiMeetView *)语法含义是什么?
关于(JitsiMeetView *)语法的含义
这是Objective-C中的强制类型转换语法,作用是告诉编译器你确认当前指针指向的实例的实际类型就是JitsiMeetView,让编译器跳过类型校验。
对应到你贴的代码里的上下文逻辑:
- 所有
UIViewController的self.view属性默认声明的类型是通用的UIView *,但这个ViewController的根视图已经被提前设置为JitsiMeetView的实例(JitsiMeetView是UIView的子类,封装了Jitsi的音视频会议相关能力) - 只有转成
JitsiMeetView *类型之后,你才能正常调用这个类独有的属性和方法,比如代码里后续用到的delegate属性、join方法,这些都是通用UIView没有的,如果不做类型转换,编译器会直接报方法不存在的错误。
注意:这个转换只在编译层面生效,运行时如果这个指针指向的实例真的不是
JitsiMeetView类型,调用独有方法时会直接触发崩溃。
内容的提问来源于stack exchange,提问作者Alwaysblue
相关产品推荐
相关产品推荐

