在 Objective-C 中,我通常会看到返回动态类型对象的方法,定义如下:
- (id)someMethod:(id)someParameter;
不过,我知道我也可以做到这一点:
- someMethod:someParameter;
有趣的是,我在更多核心级别的基础课程中看到了后一种约定,但其他人似乎都使用第一种。既然 Objective-C 运行时推断出一个无类型的方法或参数将返回id
,我为什么要包含它?它不会破坏阅读的流程吗?
我不仅想知道开发人员考虑使用此约定可能出现的问题,而且还想知道你们是否认为这很奇怪?