Are they evil?
Are they useful?
What about const and rvalue references?
>>61244516
yes
>>61244516
A const reference is fundamentally less evil, but references are definitely evil
>>61244516
They are the most amazing functionality of the language. Allow you to write many things without using manual memory allocation.
>>61244797
>Allow you to write many things without using manual memory allocation.
Not true at all, pointers can do the same thing.
Of course they're evil. Anybody who has played nethack can tell you ampersands are demonic.
I got pissed off, ripped Pamela Lee's tits off, smacked her so hard it knocked her clothes backwards like Kriss Kross
>>61244516
this thread is stupid
>>61245753
This
References are just syntactic sugar for pointers, except for the fact that it's illegal to do pointer arithmetic on them. Likewise, a const reference is just syntactic sugar for a pointer to const.
Rvalue references are something different, are are necessary for move constructors. Since there are obviously many times when you don't want to be doing assloads of copying, they're pretty much a good thing.
(i & 1) != 0
is superior to
(i % 2) != 0
>>61250094
the first one was written by a smartass fedora tipper, and the second one by a mature human being that understands that code should clearly show programmer's intent
>>61244516
The only bad references are non-const references because it isn't immediately obvious that your function argument will be modified when you call the function