OVH Cloud OVH Cloud

gotw069, demande de compléments d'information

2 réponses
Avatar
Aurélien Barbier-Accary
Bonjour,

L'article http://www.gotw.ca/gotw/069.htm est très intéressant et décrit dans sa
troisième partie comment forcer des classes filles à déclarer un constructeur
par défaut, un constructeur par copie, un opérateur de copie et un destructeur
afin d'éviter l'utilisation de constructeurs/destructeur/opérateur implicites.
En résumé, il faut définir les constructeurs/opérateur de la classe mère comme
private pour générer une erreur de compilation.

Cette vision des choses m'intéresse pour mes librairies, cependant chacun de mes
objets doit appeler les fonctions correspondantes (désolé pour l'abus de
langage) de la classe mère (des travaux y sont mutualisés), ce qui n'est plus
possibles si ces fonctions sont privées.

Ma question est, peut-on faire quelque chose de similaire mais en permettant
l'appel de ces fonctions sans avoir à définir des fonctions tierces appelées à
la fois par les fonctions privées de la classe mère et par les fonctions
publiques des classes filles ?

J'espère être compréhensible ;-p

Aurélien.

2 réponses

Avatar
Fabien LE LEZ
On Fri, 21 Oct 2005 16:53:45 +0200, Aurélien Barbier-Accary
:

ce qui n'est plus
possibles si ces fonctions sont privées.


Les déclarer "protected" ?

Avatar
Aurélien Barbier-Accary
On Fri, 21 Oct 2005 16:53:45 +0200, Aurélien Barbier-Accary
:


ce qui n'est plus
possibles si ces fonctions sont privées.



Les déclarer "protected" ?



non car le but est justement d'interdire leur accès pour forcer la surcharge.