`ref T` should be a type!!
Atila Neves
atila.neves at gmail.com
Mon Apr 1 13:57:17 UTC 2019
On Monday, 1 April 2019 at 13:09:28 UTC, Dein wrote:
> On Monday, 1 April 2019 at 01:18:44 UTC, Walter Bright wrote:
>> On 3/31/2019 5:35 PM, Rubn wrote:
>>> you can literally use it everywhere else you can use a type.
>>
>> No, you can't. An array of refs won't compile, either.
>>
>> void test(int& a[]); // error
>>
>> A C++ ref can only appear at the top of a type AST, which is
>> unlike any other type. Which exactly matches the only place a
>> storage class can be!
>
> Seriously? You should know as well as I do what that function
> actually translates to:
>
> void test(int&* const a);
>
> So I ask you now, how do you get a pointer to a reference. Its
> the exact same thing. Not sure if you are trying to just
> deceive me with some syntax sugar in C++ or what.
Bad example, but the point stands:
----
// foo.cpp
int fun() {
int& foo[5]; // doesn't compile
}
----
I'd never even thought of it until Walter mentioned it that one
can't have an array of references. Huh.
More information about the Digitalmars-d
mailing list