re

nouveau probleme

j'ai recemment decouvert les joies du RAII et de ses autodestructions
sans avoir a faire de new. Merveuilleux.

Voila mon probleme, je veux acceder a une ressource (un driver pour ceux qui ont suivi mes precedents posts). Le driver est ok maintenant j'ai qqc de la forme suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
{
driver D;
D.fnt1();
D.fnt2();
}
et a la fin de l'accolade les ressources utilisées par le driver sont libérées.

Nouveau besoin => nouveau probleme, le peripherique est retournée chez son proprietaire et je voudrais maintenant simuler ce qu'il fait habituellement a partir d'une classe simulateur (ayant exactement les memes methodes). Donc polymorphisme et virtual.

Au niveau besoin, ma fonction recoit un parametre qui indique celui qu'il doit choisir : PERIPH ou SIMUL
j'aurais aimé avoir le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
fnt(type t)
{
driver D(t);
D.fnt1();
D.fnt2();
}
c'est tres simple a faire avec des pointeurs et des fonctions virtual
mais la sans pointeur ...