Comment remplire une CList ?
Pour remplir la liste, pour l'instant j'ai fait un truc ;
Voilà, dans MyProject.h je déclare :
typedef CList<CCamera*, CCamera*> CCameraList;
et dans MyProject.cpp je crée la fonction suivante
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| void CCamera::ListCamera(void)
{
CCameraList m_camera;
CCamera1* pCamera1 = new CCamera1;
CCamera2* pCamera2= new CCamera2; //etc...
m_camera.AddHead(pCamera1);
delete pCamera1;
m_camera.AddHead(pCamera2);
delete pCamera2; //etc...
} |
Au niveau syntaxe, c'est bon mais en tous cas on voit en mode debug que pos reste désespérément à 0x00000000 et donc on ne rentre jamais dans jamais la boucle while(pos) du code de GetConnectedCamera que voilà ci-dessous :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| CCamera* CMyProjectDoc::GetConnectedCamera()
{
POSITION pos = m_CCameraList.GetHeadPosition();
while(pos)
{
CCamera* pCamera = m_CCameraList.GetNext(pos);
pCamera.Connect();
if( pCamera.IsConnected() )
return pCamera;
}
return NULL;
} |