在 C++ 函数声明中,右括号前的符号有什么作用?

What does ampersand before closing bracket do in C++ function declaration?

找到这个例子,想知道右括号前的 & 是做什么用的?

void f(const Foo &)
{
    std::cout << "f(const Foo&)\n";
}

例子取自here

非常感谢您的帮助。

它是对 Foo 类型的引用。你应该给自己买一本 C++ 书并通读一遍。

http://en.wikipedia.org/wiki/Reference_%28C%2B%2B%29

简单来说,& 表示它是参考。

因此,当您在函数声明中使用 & 运算符时,前面是一个类型(这里是 Foo),这意味着 "reference to" 本质上是一个自动取消引用禁用指针运算的指针。

另请查看此 reference 了解详细信息

在C++中,如果不使用参数,则不必命名。如果您命名了一些编译器设置,它们甚至会生成警告。未命名参数仅由类型组成,类型也可以是指针或引用或它们的组合。在这种情况下(如前所述),类型是参考。

未使用的参数大多是无用的,应该避免,但它们可以存在于虚函数中,其中一些实现需要它们而另一些则不需要。