Bonjour,
j'ai pensé qu'il serait parfois utile d'avoir une classe Handle (un pointeur vers une donnée accessible à un nombre restreint de classes) et je cherche une manière élégante de l'implémenter.
Ma première idée d'utilisation est :
typedef Handle<WidgetData, TypeList(Widget, WidgetManager, Graphic, System)> WidgetDataHandle;
Ce qui définirait un Handle vers un WidgetData dont les opérateur -> et * ne seraient accessible qu'aux classes de la TypeList.
Ainsi il serait possible de faire transiter des WidgetDataHandle dans l'application mais inutilisable ailleurs que prévu.
On pourrait imaginer une politique de stockage template sous forme de smartptr, auto_ptr...
Le problème c'est que ne fonctionne pas donc je suis coincé dans mon idée et je viens vers vos lumières.
Partager