iOS变量定义在 .h 还是 .m 中
2015-06-05 15:00
302 查看
前言
以前我定义变量一直都是定义在.h文件中,后来看别人的代码,发现很多人都把一些变量定 义在.m文件中。后来我自己试了一把,发现变量既可以定义在.h文件中也可以定义在.m文 件中,虽然这是个很小的问题,或许有些人会说既然都可以,那不随你定义在哪里喔,但是 我一直觉得肯定会有区别的,后来我终于找到了一个能说服我的解释了。
一、变量定义在.h文件中
@interface BaseTableViewController : BaseNavViewController { UIView *backgroud; UIActivityIndicatorView *activity; UIImageView *imageNonet; UILabel *labError; UILabel *labRetry; }
二、变量定义在.m文件中
@interface BaseTableViewController () { UIView *backgroud; UIActivityIndicatorView *activity; UIImageView *imageNonet; UILabel *labError; UILabel *labRetry; }
其实这两种定义方式从写法上来说是没有问题的,但是从代码规范来看却是有问题的。
.h文件中一般放的是一些对外公开的变量或者是方法,而.m文件中一般放的是自己私有的一些变量和方法。比如说,我们要写一个SDK给别人调用,我们把写好的代码打包成一个静态库,调用者只能够看到.h文件,那么我就把需要传入的参赛变量和调用的方法写在 .h 文件中。对于一些与调用者无关而我们自己要需要的变量或是方法我们就可以放在 .m文件中。其实通俗的说就是对外公开的变量或是方法就定义在 .h 文件中,对内私有的变量或是方法就定义在 .m 文件中。
补充
如果定义一个属性类,供其他类调用,则这些属性全部要定义在.h文件中。因为定义在.m文件中的属性,其他的类是访问不到的。
相关文章推荐
- IOS开发---视频录制
- iOS 7 以上 新沙盒目录
- IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
- IOS控件大全及控件大小
- iOS - 版面实现记录四
- iOS 时间戳转换成标准时间
- IOS的各种控件(转载,防止遗忘)
- 关于Core Location-ios定位
- iOS 的Block 代理模式和回调
- iOS 8 AutoLayout与Size Class自悟
- IOS判断手机型号
- iOS plist文件的读写
- IOS CoreText.framework --- 图文混排
- IOS CoreText.framework --- 段落样子CTParagraphStyle
- IOS CoreText.framework --- 基本用法
- IOS CoreText.framework --- 行 CTLineRef
- IOS中获取各种文件的目录路径的方法
- iOS消息推送机制的实现
- IOS多线程开发其实很简单
- ios 线程