octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Graphics properties as objects


From: John Swensen
Subject: Re: Graphics properties as objects
Date: Sat, 5 Jan 2008 17:23:33 -0500


On Jan 5, 2008, at 5:05 PM, Michael Goffioul wrote:

On 1/5/08, John W. Eaton <address@hidden> wrote:
Is it even necessary to have the base class do reference counting
here?

Since the properties are tied to the graphics objects that contain
them, shouldn't we only expect them to exist as long as the graphics
object exists?

If individual properties do need to exist longer than the graphics
objects that contain them, then wouldn't it be sufficient to simply
have a copy of the property?  Aren't most (all) of the property
classes composed of objects that are already reference counted?  So
copying them should be relatively cheap and since they are passed
around by value, they should not be deleted unnecessarily?

I'm not sure I fully understand you. I agree with copying properties
instead of const-referencing. However, if you want to have a map of
all properties, how would you define it? std::map<caseless_str, XXX>?
If XXX is "property" and you don't do reference couting, you will get
a memory leak with dynamic properties (that wil only be stored in the
map). Or maybe you mean simply to disable "somehow" reference
counting for fixed properties?

Michael.

Is there a reason you use your own reference counting instead of using auto_ptr or some other smart pointer? I don't know the Octave code really well, but have noticed the ref variable in a variety of classes.

John Swensen


reply via email to

[Prev in Thread] Current Thread [Next in Thread]