枚举值特别多的时候,想每一个枚举值都具体注释提示的话,就只能在每个枚举上一行加上/// ···
或/** ··· */
,但是会让代码显得不整齐(可能是我强迫症?),如果需要给每个枚举值增加一个简短的注释,并且在使用的时候有注释提示可以这样写。
- 带提示代码后单行注释 ://!< ···
或多行注释: /**< ··· */
和 /*!< ··· */
代码语言:javascript复制/// 测试枚举
typedef NS_ENUM(NSUInteger, ZYTestType) {
ZYTestTypeA, //!< 类型A
ZYTestTypeB, /**< 类型B */
ZYTestTypeC, /*!< 类型C */
};
枚举注释
这种注释方法,同样适合类的属性注释或者结构体属性注释。
下面是OC中常见的一些注释:
- 基本单行注释: //
一般在方法内对一些步骤进行注释,有时写在代码上一行,有时也接着代码写:
代码语言:javascript复制// 测试方法
- (NSArray *)testFunctionWithString:(NSString *)str {
//创建一个数组
NSArray *array = [NSArray new];
array[1] = str; //给数组赋值
return array;
}
如果写在方法前,调用的时候无法查看注释提示
- 基本多行注释:/* ··· */
代码语言:javascript复制/* 测试方法
* 这个方法返回一个数组
*/
- (NSArray *)testFunctionWithString:(NSString *)str {
...
}
- 带提示多行注释:/** ··· */
或 /*! ··· */
这个方法很强大,这里只展示我们常用的
代码语言:javascript复制/**
* 测试方法
*
* 返回一个数组
* @param str1 传入的参数
* @return 返回一个数组
*/
- (NSArray *)testFunctionWithString:(NSString *)str;
第一行和第二行需要空一行,这样第二行会被分配到 Discussion 这个组中,不然会被拼接到 Summary中
多行提示 - 注释效果
- 带提示多行注释:///
这个是在Swift出来后的注释方法,OC也是可以用的,现在的Xcode command option /
出来默认就是这个了
/// 测试方法
///
/// 返回一个数组
/// @param str 传入的参数
/// @return 返回一个数组
- (NSArray *)testFunctionWithString:(NSString *)str;
它的具体效果和上方/** ··· */
一致
- 分组注释 #pragma mark - ···
Swift:// MARK: ···
使用这个注释能在导航栏中快速找到具体功能模块代码
代码语言:javascript复制#pragma mark - 生命周期
//可用这个创建自定义代码块
#pragma mark - <#注释#>
mark1
同时在新的 Xcode 的 MiniMap 中也能直接看到注释
mark2
- 未做提示注释 //TODO: ···
Swift一致
一般用来标识需要做的工作,TODO也会在快捷导航栏中显示
代码语言:javascript复制- (void)viewDidLoad {
[super viewDidLoad];
//TODO: 加载图片,做一个炫酷的效果
}
TODO
- 警告注释:
#warning ···
Swift:#warning(" ··· ")
这个编译警告注释会直接在界面提示,同时在左侧导航栏中的编译警告中(User-Defined Issue)显示,但是中文有点尴尬哦,不显示
代码语言:javascript复制- (void)viewDidLoad {
[super viewDidLoad];
//TODO: 加载图片,做一个炫酷的效果
#warning Can Not Forget 中文尴尬
}
#warning