【问题标题】:What's up with method(void) in Cpp? [duplicate]Cpp中的方法(void)怎么了? [复制]
【发布时间】:2021-04-26 03:39:58
【问题描述】:

所以我找到了这个

public:
    ListElem(string s);
    
    string     getData(void) const;
    ListElem*  getNext(void) const;
    ListElem*  getPrev()     const;

顺便说一句,这是用 cpp 编写的头文件中列表的 sn-p

谁能告诉我“(void)”是干什么用的? methodName() 和 methodName(void) 的区别在哪里?

【问题讨论】:

  • 看起来像 C 的遗物,这两个签名之间存在差异。请参阅this question 了解更多信息。
  • @NathanPierson 绝对在我看来是重复的......(然后小行星打败了我)

标签: c++


【解决方案1】:

methodName() 和 methodName(void) 都是一样的,只是你告诉编译器我不想要任何东西作为参数,如果你不写 void 那么它也需要 void。

两者都是一样的。

【讨论】:

    【解决方案2】:

    谁能告诉我“(void)”是干什么用的? methodName() 和 methodName(void) 的区别在哪里?

    在 C++ 中,没有区别。两者都是不带参数的函数。

    在 C 中,只有 functionName(void) 声称不带参数。 functionName() 表示未指定参数列表。

    还应该注意的是,C++ 不承认术语方法 意味着任何东西。你说的是函数

    【讨论】:

      【解决方案3】:

      在 C++ 中,void foo() 等于 void foo(void),所以它们都意味着 foo 不应该带参数。您可以使用后者来强调缺少参数,但它们的工作原理几乎相同。

      【讨论】:

        猜你喜欢
        • 2014-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-16
        • 2014-11-24
        • 1970-01-01
        • 2019-07-10
        相关资源
        最近更新 更多