L'ok I voient, merci pour signaler les en-têtes. :)
Ce code complique clairement des choses excessivement, réellement sa seulement 1 classe requise, plutôt que 3.
Laisse l'appel il « processus » :
processus de classe
{
public :
Processus (DST : : executable_name_ wstring, DST : : command_line_ wstring) ;
~Process (vide) ;
StartProcess vide () ;
privé :
CreateProcessAsActiveSession vide () ;
bool GetActoveConsoleSessionId (session_id de DWORD&) ;
privé :
DST : : executable_name_ wstring ;
DST : : command_line_ wstring ;
} ;
La membre-fonction « StartProcess » appartient dans cette classe, parce que tous qu'elle a besoin en termes de données, est ici.
Vous voyez qu'elle a toute la fonctionnalité, comme les 3 classes, mais elle encapsule les données et les fonctions qui opèrent ces données dans 1 endroit. C'est ce qui est signifié par la « encapsulation » en termes d'OO-Programmation.
Positif il a une interface plus propre et est plus facile d'employer.
Peut-être il lui fait le clairifiant, si vous pensez à ajouter de nouvelles fonctionnalités, comme KillProcess et d'autres, ils que tout appartient dans cette classe. Garder les données et les fonctions qui opèrent ces données ensemble dans 1 endroit.