Desconectar manejadores de señales

Eche otro vistazo al método connect de la señal:

sigc::signal<void,int>::iterator signal<void,int>::connect( const sigc::slot<void,int>& );

Notice that the return value is of type sigc::signal<void,int>::iterator. This can be implicitly converted into a sigc::connection which in turn can be used to control the connection. By keeping a connection object you can disconnect its associated signal handler using the method sigc::connection::disconnect().