Question conceptuelle utilisation d'une classe dans un map
	
	
		Bonjour,
J'ai une classe B encapsulée dans la class A.
Je déclare ensuite un map de n class B.  Je désire ensuite de l'extérieur pouvoir accéder aux fonctions de B, j'ai donc déclaré une fonction GetpB(index); qui me retourne un pointeur sur ma class B de position index.  J'utilise enfin ce pointeur pour accéder aux fonctions membres de B.
Est-ce que cette approche est valable? 
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
   |  
class A
{
public:
   class B
   {
       f1();
       f2();
   };
protected:
   std::map<int,B> m_map;
public:
    B* GetpB(int index);
};
 
...
 
A::B* A::GetpB(int index)
{
   std::map<int,B>::iterator it;
   it = m_map.find(index);
   if (it!=m_mapBV.end())
       return (&it->second);
} | 
 plus loin dans le code principal
	Code:
	
1 2 3
   |  
    A a;
    a->GetpB(1)->f1(); |