【问题标题】:Mark a method as deprecated将方法标记为已弃用
【发布时间】:2014-08-20 23:57:30
【问题描述】:

我的 API 发生了变化,我想将一种方法标记为已弃用。 我在它的签名上写了以下内容: 属性((deprecated("不要使用这种方法"))); 但是,我不知道我需要如何在方法体本身中表现。

在 Apple 编码上找不到任何东西开始引导我。 该方法返回 BOOL。 我应该返回false吗?

【问题讨论】:

  • 为什么将其标记为已弃用?
  • 我如何将方法标记为已弃用:-(void)method __attribute__((deprecated)); (.h) -(void)method __attribute__((deprecated)){}(.m) 这对我总是有效的。
  • Deprecated 表示该方法应该仍然有效,但不建议您调用它,因为应该采用一种新方法。
  • 否,如果您不想让任何人使用它,请将其删除。 Deprecated 表示将来会被删除,不建议您再使用它。但如果调用它应该仍然有效。
  • 杰夫是对的。即使它是一种已弃用的方法,它仍然应该有效。如果您不希望任何人使用它,请从 API 中删除它

标签: ios xcode api


【解决方案1】:

Deprecated 表示该方法仍然有效,但可以在未来的版本中删除,并且最好使用新方法。

您可以向使用已弃用方法的用户提供一些额外信息:

/**
 * @deprecated This method is deprecated starting in version x.x
 * @note Please use @code newMethod:withNewParameter: @endcode instead.
 */
-(void)depFunction:(id)x __attribute__((deprecated));

当他使用like时:

[yourClassObj depFunction:@"argument"];

快速帮助面板将显示如下信息:

您可能还想将attribute((deprecated("Don't use this method"))); 更改为DEPRECATED_MSG_ATTRIBUTE("Don't use this method, use the other one instead.");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-01
    • 2021-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 2023-01-19
    相关资源
    最近更新 更多