I came across a function with this signature.
void foo(char (&x)[5])
{
}
This is the syntax for passing a fixed size char array by reference.
The fact that it requires parentheses around &x strikes me as unusual.
It is probably part of the C++03 standard.
What is this form called and can anyone point out a reference to the standard?
c++decl is not a friend yet:
$ c++decl
Type `help' or `?' for help
c++decl> explain void foo(char (&x)[5])
syntax error
char& x[5]is an array of 5 character references, not a reference to a character array of length 5.