Objective-C 枚举值注释

2020-04-14 10:26:58 浏览数 (1)

枚举值特别多的时候,想每一个枚举值都具体注释提示的话,就只能在每个枚举上一行加上/// ···/** ··· */,但是会让代码显得不整齐(可能是我强迫症?),如果需要给每个枚举值增加一个简短的注释,并且在使用的时候有注释提示可以这样写。

- 带提示代码后单行注释 ://!< ··· 或多行注释: /**< ··· *//*!< ··· */

代码语言: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 /出来默认就是这个了

代码语言:javascript复制
/// 测试方法
///
/// 返回一个数组
/// @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

0 人点赞