On Saturday, 2 March 2013 at 08:56:04 UTC, Namespace wrote:
On Saturday, 2 March 2013 at 00:49:55 UTC, Era Scarecrow wrote:
If 'auto ref' gets accepted for non-template functions, it goes away. With M as you show, returning ref doesn't work so that example I was going to suggest doesn't work.

auto ref will in all probability never work for non-template functions, as I said before.

Steven Schveighoffer:
I understand, that you like to have rvalue references for structs but I still don't understand why. Despite yesterday's discussion, I still do not understand the reason to use a struct instead of a class, when it comes to a massive amount of data. structs are copied or moved, structs have no polymorphism and no interfaces, so why you should use a struct instead of a class, if your struct is very massive? I don't get it.

1/ Generic code. You may not know that the data are big after starting conglomerating more and more stuff.
2/ Data may be small, but with an expensive copy mecanism.
3/ A class would require to create the proper routines to duplicate itself. 4/ Classes imply indirections. Which may be a problem (think about array of such item for instance). 5/ Value type have great benefice in regard to the GC. LRU cache is a very good way to kill Java's GC, because it generate plenty of old garbages. The same thing in C# using value types don't cause that much GC trashing.

And I can go on and on.

Reply via email to