"(void)!ptr"做什么?

  • 本文关键字:void ptr c++
  • 更新时间 :
  • 英文 :


当我阅读pugixml源代码时,我看到它,我真的不知道为什么它在那里。

void foo(void* ptr) {
    (void)!ptr;  // What does this line do?
}

(void)ptr;是抑制"未使用参数"警告的常用方法,当函数签名需要包含比函数使用的参数更多的参数时(例如在回调中,如果'user data'参数未使用),这可能是必要的。

!对我来说是新的,尽管在这种情况下它是多余的,因为返回值只是被丢弃。

最新更新