QObject quando herdar.
-
Li em algum lugar recomendando que se crie classes derivadas de QObject, mas a pergunta é porque essa recomendação, quando realmente deve-se herdar de QObject e quando não devo?
-
Basicamente você deve herdar de QObject sempre que precisar usar os signals e slots, ou precisa acessar as informações que o QObject expôe (enumerar propriedades por exemplo).
Além disso, objetos herdados de QObject podem controlar a desalocação de memória, quando você cria um objeto, e passa para o objeto quem é o "pai". Assim quando o "pai" é desalocado, o filho também o é (hierarquia - filhos).
-
Acho que por via de dúvida é sempre bom herdar de QObject se você não sebe antecipadamente ser irá precisar de algum desses recursos. Só resta saber se existem efeitos colaterais ao herdar de QObject.
-
Acredito que os efeitos colaterais são a inserção de informações e tratamentos automáticos (como copy constructors).
Mas em geral não vejo problema de hedar sempre de QObject;.