Bonjour à tous![]()
J'aimerais savoir quelle est la différence entre la notion d'index et celle de position dans les objets ou contrôles de type List.
Merci de votre aide éclairée![]()
![]()
![]()
Bonjour à tous![]()
J'aimerais savoir quelle est la différence entre la notion d'index et celle de position dans les objets ou contrôles de type List.
Merci de votre aide éclairée![]()
![]()
![]()
salut,
je ne sais pas si on doit vraiment parler de différences sur ce sujet...
l'accès sur les list étant plutôt orientée POSITION (un sorte d'itérateur) ,c'est clair que ce n'est pas un indexque dire de plus ?
on ne peut accéder directement à un élément par son index sauf à le convertir en POSITION.
![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Salut farscape(et les autres !)
Ce truc me titille quand même. En Delphi par exemple - comme en VB - ne n'ai jamais entendu parler que d'index, à partir de zéro, bien sûr. En fait, il m'est venu l'idée que l'un des deux corresponde à l'ordre d'ajout/insertion dans la liste, et l'autre son emplacement effectif dans cette listeJ'essaierai de tester ça. En tout cas, la POSITION commence à 1, et pas 0. Si j'ai raison, encore une question de ma part à laquelle j'aurai répondu moi-même
, mais, comme ça, ceusses qui se poseront la question...
A bientôt donc, avec le résultat de mes tests.![]()
![]()
![]()
hum ce n'est pas une bonne idée ,
POSITION cache en fait un liste chainée basée sur la structure CNode:
exemple d'utilisation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 struct CNode { CNode* pNext; CNode* pPrev; TYPE data; }; struct __POSITION { }; typedef __POSITION* POSITION;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 AFX_INLINE TYPE& CList<TYPE, ARG_TYPE>::GetNext(POSITION& rPosition) // return *Position++ { CNode* pNode = (CNode*) rPosition; ASSERT(AfxIsValidAddress(pNode, sizeof(CNode))); rPosition = (POSITION) pNode->pNext; return pNode->data; }
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Partager