Bonjour,
je suis sur un projet embarqué où je n'ai pas la STL ni la gestion des exceptions.
J'ai besoin d'avoir des listes doublement chaînées. Je suis donc en train de me créer une liste doublement chaînée (DLList<T> pour moi).
Mon code est quasi terminé et donc maintenant avec je le test et j'en suis à la partie où je teste les itérateurs.
Mon test actuel est le test de
Si pour une raison inconnue l'itérateur pointe sur NULL, alors je fais quoi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 //! Returns reference to value in iterator's target, //! @todo : BIG problem if m_Position = NULL, should throw an error inline T& operator*() const { if(m_Position != NULL) return m_Position->val; else return *(reinterpret_cast<T*>(NULL)); // should throw an error }
C'est carrément crade de faire une référence sur NULL non ? Que suggérez-vous ?
Partager