gpt4 book ai didi

c++ - 构造函数参数中没有名称的变量?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:38:04 25 4
gpt4 key购买 nike

我想知道,当有人给你一个 C++ 中默认构造函数的模板时,在参数中有一系列未命名的变量,这些变量以某种方式被赋值。这是什么意思?这是合法的吗?如何访问这些变量?

我收到的例子:

IntSet::IntSet(int = -1, int = -1, int = -1, int = -1); //default constructor

我将不胜感激任何澄清此用途的答案!

最佳答案

在声明或函数定义中不命名参数是完全合法的。在声明和定义中对给定参数使用不同的名称也是完全合法的。

请注意,如果定义中未命名的参数不可访问。为什么要这样做?许多编译器可能会提示未使用的参数。如果函数定义没有命名那些未使用的参数,大多数编译器不会提示。

关于声明中的未命名参数,这是这个问题的主题:仅仅因为这样做是合法的并不一定意味着它是一种好的做法。函数声明中的那些未命名参数对于编译器来说可能没问题,但对于人类读者来说就不好了。没有名字 = 零沟通。文档和头文件应该包含外部用户需要了解的有关如何使用该类的所有信息。 RTFM,也许还有 RTFH(阅读精美的手册/阅读精美的标题)。 RTFM 和 RTFH 中的“F”字(“好”)在 RTFC 中具有不同的含义。

header 中那些未命名的参数几乎不可避免地与糟糕的文档结合在一起。作为外部用户,这迫使我阅读函数的定义以了解如何使用函数。 RTFC。当外部用户必须阅读实现以确定发生了什么时,这并不好。

关于c++ - 构造函数参数中没有名称的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12877846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com