Re: [gtk-list] Re: Gtk-- versus GTK+
- From: pavel <pavel klebanov ne mediaone net>
- To: gtk-list redhat com
- Subject: Re: [gtk-list] Re: Gtk-- versus GTK+
- Date: Fri, 30 Apr 1999 19:44:20 -0400 (EDT)
Thanks!
(Sorry about the previous message, my finger slipped.)
On Fri, 30 Apr 1999, Karl Nelson wrote:
> > 
> > Am I correct in assuming that in the first paragraph you're refering to
> > our inability to use member functions as callbacks (because the first
> > argument is always this)?
> 
> Yes, although I don't think that it is entirely impossible to use
> a member function as a callback.   Some people have substituted the
> first arguement with the C++ object and gotten it working.  However, 
> that still doesn't make the connection safe as objects in C++ may come
> and leave scope or be destroyed.  When that occurs unless there is no
> class data used (thus a static function) the program will segfault.
> It is that safty of connections that is a key feature of gtk--.
>  
> > If you are, then not only is it not safe, but
> > will actually not work with a 100% certainty (unless it the callback uses
> > no data whatsoever). And yes, I do have a 100 little static callbacks.
> > 
> > IF you're refering to something else, please explain more!
> 
> In addition to the safty of being able to connect to a C++ objects
> directly, there is also the type safty issues to deal with.  C 
> being a weakly typed language needs a good amount of casting.  However,
> the user can easily make errors in that casting that C++ can catch.
> (And is expected to as a language feature.)
> 
> Therefore, we implemented typesafe templates that allow the 
> compiler to check if a function can safely be connected from 
> to a signal.  This does come a cost.  If you have tried to compile
> with gtk-- you will notice that it is quite slow.  This is because
> of the extensive template matchine that is required to perform
> that checking.   For most programmers it is well worth the cost.
> 
> --Karl
> 
> -- 
> To unsubscribe: mail -s unsubscribe gtk-list-request@redhat.com < /dev/null
> 
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]