Bonjour tout le monde,

J'ai une méthode qui s'appelle "Element" qui reçoit un long (un indice) et qui renvoie une référence de CGenerique :

Voici d'abord la méthode Indice :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
long CTabRealisateurs::Indice(const char* UnNom) const
{
	return CTableauGenerique::Indice(CRealisateur(UnNom));
}
qui appelle ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
long CTableauGenerique::Indice(const CGenerique& ModeleRecherche) const
{
	if ( (m_Nombre == 0) || (!m_Poubelle->GereUnicite()) || (!ModeleRecherche.EstValide()) ) return -1;
	const CGenerique* Recherche = &ModeleRecherche;
	unsigned int n = m_Nombre;
	((CTableauGenerique*)this)->m_TypeComparaison = ComparaisonPourUnicite;
	CGenerique** Trouve = (CGenerique**)_lfind(&Recherche,m_Tableau,&n,sizeof(CGenerique*),Comparer);
	((CTableauGenerique*)this)->m_TypeComparaison = -1;
	return (Trouve != NULL) ? Trouve - m_Tableau : -1;
}

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
CGenerique& CTableauGenerique::Element(long Indice) const
{
	return ((Indice >= 0) && (Indice < m_Nombre)) ? *(m_Tableau[Indice]) : *m_Poubelle;
}
Ensuite j'arrive ici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
CRealisateur& CTabRealisateurs::Element(long Indice) const
{
	return (CRealisateur&)CTableauGenerique::Element(Indice);
}
Sauriez-vous m'expliquez ce code svp ?

Un grand merci d'avance et bon Dimanche.

beegees