./782 > T'en mets pas.
Si le constructeur de m_screen foire, alors le constructeur de ton objet Task foire, c'est normal:
Si on te force à appeler les constructeurs de membres dans le constructeur de ton objet, c'est parce que les objets non initialisés ne sont pas valides/sont interdits.
Plus exactement, le seul endroit où tu peux accéder à un objet non initialisé, c'est au sein du constructeur de celui-ci (plutôt logique non ?)
Bref, un objet doit être initialisé entièrement, point.
Si une partie de ton objet échoue à être initialisée, alors ton objet entier échoue à être initialisé, et tu remontes la chaîne comme ça. (tout aussi logique, non ?)
Après il faut réfléchir à ce que signifie ton exception… Si c'est une erreur fatale, ça prend tout son sens qu'elle interrompe la création de l'objet.
Si en revanche, c'est une erreur normale (par exemple la classe Joystick échoue parce qu'il n'y a pas de joystick sur le PC), tu dois probablement revoir ton design et modifier ce champ en un pointeur vers objet. (Le pointeur peut être NULL, lui)