黑马程序员技术交流社区

标题: OC弱语法问题 [打印本页]

作者: 愿我能    时间: 2014-4-22 18:30
标题: OC弱语法问题
弱语法都是什么时候出现?
刚刚看到协议Protocol中两种@required 表示必须实现的方法 但是OC弱语法的特征,即使不实现编译器也可以通过,之前 零基础有专门一节提到过,就是 调用方法时,方法为实现也可以通过,这样弱语法讲的到底是什么?像是语言的口语么? 没有主谓宾强制的要求,比较随便?
作者: 又召    时间: 2014-4-22 21:33
根据之前在视频中的介绍,弱语法应该指的是对程序的语法规则要求没有很严格,比如有一些不合理或与标准用法不一致的用法,只是有警告,但也可以通过编译,而不像JAVA中相对语法规则要求非常严格,与语法要求不一致的就直接报错,错就是错,不会给你通过编译,让你在运行中再去检测,造成程序崩溃。
作者: 魅影穿眸    时间: 2014-4-23 18:11
弱语法就是编译器管的不那么严格,只要语法对就行(包括不是标准语法),而你的逻辑不对也行,也可以通过。强语法就是不符合语法就报错
作者: 戴文婷    时间: 2014-4-23 19:31
弱语法其实就对对强语法而已的啦。有强有弱嘛,才有对比嘛。如果学过java强语言类型的,就能体会了。在C语言和OC中。char类型,能够和int相加。这种语法已经算是弱语言的。在java中是不能直接相加。编译的时候就会报错。
作者: gmadong@163.com    时间: 2014-4-23 21:13
NSData *data = [[NSString alloc]init];  能通过编译器 所以就是oc弱语法 ( 即对类型不敏感的)






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2