专栏首页韦弦的偶尔分享Objective-C 枚举值注释

Objective-C 枚举值注释

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

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

/// 测试枚举
typedef NS_ENUM(NSUInteger, ZYTestType) {
    ZYTestTypeA, //!< 类型A
    ZYTestTypeB, /**< 类型B */ 
    ZYTestTypeC, /*!< 类型C */ 
};

枚举注释

这种注释方法,同样适合类的属性注释或者结构体属性注释。

下面是OC中常见的一些注释:

- 基本单行注释: //

一般在方法内对一些步骤进行注释,有时写在代码上一行,有时也接着代码写:

// 测试方法
- (NSArray  *)testFunctionWithString:(NSString *)str {
  //创建一个数组
  NSArray *array = [NSArray new];
  array[1] = str;  //给数组赋值
  return array;
}

如果写在方法前,调用的时候无法查看注释提示

- 基本多行注释:/* ··· */

/* 测试方法
 * 这个方法返回一个数组
 */
- (NSArray  *)testFunctionWithString:(NSString *)str {
  ...
}

- 带提示多行注释:/** ··· *//*! ··· */

这个方法很强大,这里只展示我们常用的

/**
 * 测试方法
 *
 * 返回一个数组
 * @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: ···

使用这个注释能在导航栏中快速找到具体功能模块代码

#pragma mark - 生命周期

//可用这个创建自定义代码块
#pragma mark - <#注释#>

mark1

同时在新的 Xcode 的 MiniMap 中也能直接看到注释

mark2

- 未做提示注释 //TODO: ··· Swift一致

一般用来标识需要做的工作,TODO也会在快捷导航栏中显示

- (void)viewDidLoad {
    [super viewDidLoad];
    
    //TODO: 加载图片,做一个炫酷的效果
}

TODO

  • 警告注释:#warning ··· Swift: #warning(" ··· ")

这个编译警告注释会直接在界面提示,同时在左侧导航栏中的编译警告中(User-Defined Issue)显示,但是中文有点尴尬哦,不显示

- (void)viewDidLoad {
    [super viewDidLoad];
    
    //TODO: 加载图片,做一个炫酷的效果
    
#warning Can Not Forget 中文尴尬
}

#warning

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Swift:轻量级API的设计(一)

    Swift的最强大功能之一就是在设计API方面给我们提供了极大的灵活性。这种灵活性不仅使我们能够定义易于理解和使用的函数和类型,还使我们能够创建给人以非常轻量级...

    韦弦zhy
  • Swift 删除链表的倒数第N个节点 - LeetCode

    构建双指针first与sec,first先走n步,然后一同运动,当first指向表尾,sec指向的next即是倒数第N个节点,删除即可(next指向next的n...

    韦弦zhy
  • 100 Days of SwiftUI —— Day 28:BetterRest(三)

    这个项目是一个机会,让你练习一些SwiftUI的基础知识,学习一些新的用户界面控件:日期选择器DatePicker和步进器Stepper,看看 Swift 如何...

    韦弦zhy
  • 客户让你给代码加注释怎么办?

    作为乙方,我以前听过一些同事说客户要求给代码加注释,一开始自己不以为然,直到有一天这件事情发生在我身上:某大有可为的项目接近尾声,准备下项目前一周,PM说接到客...

    袁慎建@ThoughtWorks
  • 代码洁癖系列(四):可忽略的注释

    刚开始学编程的时候,老师就告诉我们,注释很重要,但是一直到现在,也没有人真正告诉过我要怎么写注释。还有很多人甚至干脆不写注释。所以今天想聊一下到底如何写注释。

    Jackeyzhe
  • C++注释风格建议

    有个笑话,一位从不写注释的程序员在编写一段复杂的代码时,骄傲地认为这段代码只有自己和上帝知道它是干嘛的,等过了一段时间再回顾时,发现没有注释,感叹到这段代码现在...

    Dabelv
  • Python注释用法

    在Python中的注释与其他语言相比有很大的不同,但使用起来也很简单。在Python中有两种注释,一种是单行注释,一种是多行注释。单行注释适用于简短快速的注释(...

    marsggbo
  • 编写高质量可维护的代码:一目了然的注释

    有一些人认为,好的代码是自我解释的。合适的命名和优秀的代码的确可以减轻开发人员阅读代码的工作量,对于不是特别复杂的代码可能确实可以做到自我解释。但并不是所有场景...

    政采云前端团队
  • 代码里注释写太多,会挨打吗?

    前几天,有个同行朋友在我的微信上留言,问我项目代码里注释写太多会挨打吗?顺手还给我甩了一张截图,上面密密麻麻的全是手工注释。

    闰土大叔
  • Android Studio自定义万能注释模板与创建类,方法注释模板操作

    代码的注释是我们平时必须面对的问题,今天我们就来看看如何自定义属于自己的注释模板。提高我们的开发效率。

    砸漏

扫码关注云+社区

领取腾讯云代金券