【问题标题】:Disable "/* within block comment" warning in Xcode在 Xcode 中禁用“/* 块注释内”警告
【发布时间】:2014-01-29 10:55:59
【问题描述】:

我在开发时经常需要多个嵌套的多线(或“部分线”)cmets。

Xcode 最近引入了可能是世界上最烦人的警告 - 它迫使我禁用“作为错误的警告”。我猜这个警告是为了捕捉极其罕见的情况,即有人拼写错误并导致块​​评论没有结束 - 但 IME 有许多其他问题会导致很快就会显示出来。

一些例子:

/* removed while debugging the BARFOO
-(void) aMethod
{
[self methodCall:7.0 /* needed to FOO the BAR: */ * self.multiplier * /* double for hi-res:*/ 2.0];
}
*/

和:

/* removed while debugging the BARFOO

/** This method has DOCUMENTATION
*/
-(void) aDocumentedMethod
{
...
}

-(void) aMethod
{
/** internally, we have to BAR BAR the FOOFOO.
1. BAR
2. BARBAR
3. Finally, FOOOFOO
*/
...complex lines of source here...
}
*/

当然还有调试时非常简单的双重注释。

但我在 Xcode5 中找不到禁用此警告的位置 - 它似乎不存在于任何列出的警告中 :( ?

【问题讨论】:

标签: xcode


【解决方案1】:

如果要查看警告代码,请进行构建,进入“日志导航器”,选择构建,展开构建日志:

查看构建日志的详细信息后,您会看到此处列出的警告代码。在这种情况下,您会看到警告是 -Wcomment


注意,这可以帮助您识别您查询的警告(“/* 块注释内”警告),但它不会改变嵌套 /* ... */ cmets 的行为。

我个人使用 Abizern 的技术来快速评论大块。或者,您可以使用

#if 0

#endif

(你可以嵌套)注释掉你的块时

【讨论】:

  • 优秀。我花了几次尝试添加警告。在Xcode5中,你必须找到“Other Compiler Warnings”,并添加一行包括-W,即出现在Xcode中(编辑后作为一行):“Other Compiler Warnings = -Wno-comment”
【解决方案2】:

您可以将// 用于任何地方的 cmets。这样您就不会收到此警告。

/也兼容doxygen类型的cmets,你不需要使用/**版本。

Xcode 支持这种语法。如果您选择一个区域,您可以使用 cmd + /

切换 cmets

【讨论】:

  • 我想你的意思是 // cmets?
  • 不带 /* 的内联 cmets 究竟是怎么做的?
  • 另外:大量多行 // cmets 的可读性远低于使用(标准!) /** javadoc cmets。我宁愿解决这个问题,也不愿让我的源代码更难使用,只是为了解决一个 IDE 错误:(。
  • 并且:许多项目(或维护者)无论如何都会在签入时用 /* */ 替换 // 多行 cmets,所以我不认为这是一个可行的解决方案 :(
  • 向对象发送消息时内联 cmets?没注意到,不是我的事。
猜你喜欢
  • 1970-01-01
  • 2011-05-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-09
  • 2011-12-21
  • 2022-07-25
  • 2017-06-05
相关资源
最近更新 更多