std.container and classes
    Steven Schveighoffer 
    schveiguy at yahoo.com
       
    Mon Dec 19 07:44:20 PST 2011
    
    
  
On Sun, 18 Dec 2011 01:15:40 -0500, Andrei Alexandrescu  
<SeeWebsiteForEmail at erdani.org> wrote:
> On 12/17/11 7:52 PM, Jonathan M Davis wrote:
>> The only reason that I can think of to use a reference-counted struct  
>> instead
>> of a class is becuse then it's easier to avoid the GC heap entirely.   
>> Almost
>> all of a container's memory is going to end up on the heap regardless,  
>> because
>> the elements almost never end up in the container itself.
>
> Being on the heap is not the main issue. The main issue is the data  
> becoming garbage once all references are gone.
This whole thread of discussion is somewhat more complicated than it has  
to be.
A ref-counted type is implemented via a reference to allocated data.  That  
data can be a class instance or a struct pointer.
Using a reference style struct just introduces problems you don't have to  
worry about with a class.  It gains you nothing except having to crowbar  
the language into believing your struct is really a reference type.
And that's really hard to do.
-Steve
    
    
More information about the Digitalmars-d
mailing list