On 08/23/2010 05:47 PM, Anthony Liguori wrote:


Devices can contain references to structs and objects. If a Device contains a reference to an object, the object should be stored in a BusState which is a container of Devices. Therefore, the object should inherit from Device.

I disagree. It's up to the author to decide whether to split a Device into 1 or 15 objects.

If one of the other objects is also a subclass of DeviceState, then you're probably violating that DeviceState's contract. But that's a different (and trivial) matter.

(side point: in C no objects have constructors and methods. in C++ all objects have constructors and methods, even PODs)

Things that inherit from DeviceState have ctors/dtors. Things that don't end up inventing their own and probably will do so poorly.

you mean misimplement other_state_init(OtherState *) and other_state_destroy(OtherState *)?

When implementing a C object model, you really need to have a base object that everything inherits from.

Why?  While it's true for Java, I don't see why it needs to be true for C.

In glib, it's GObject.

We aren't using glib.

--
error compiling committee.c: too many arguments to function


Reply via email to