设为首页 加入收藏

TOP

在iOS开发中告别未定义selector
2014-11-24 14:06:13 来源: 作者: 【 】 浏览:2
Tags:iOS 开发 告别 定义 selector

objc和C++同为由C语言衍生出的OOP语言,但他们实现OOP的方式并不相同:在C++中,对象与方法在编译器绑定;而在objc中,称“方法”一词为“消息”,在程序运行时向对象发送消息,即运行期绑定。


两种方式各有优劣,C++注重性能,objc注重灵活。


然而运行期绑定给开发带来问题——编程时拼写错了方法名,编译器并不报错。笔者曾debug一小时,最后发现是方法名少写了个冒号。


为此笔者曾用过一个笨办法——断言某对象响应某方法,以此来排除错误可能。


这当然太过麻烦,其实有个简单的方法,可以上编译器报warning:


以Xcode 4为例,打开一个项目,在左侧导航栏中双击项目文件:


在弹出窗口中将GCC waring项undeclared selector设为yes:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇ARM Linux S3C2440 之中断分析 下一篇Android中SMS的接收处理

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: