[List] Comment utiliser list avec codeblocks
Bonjour,
Je démarre un nouveau projet et j'ai décidé de le faire en C++. J'en ai pas fais depuis 10 ans, donc ça a evolué.
Notamment, je découvre les templates, la librairie STL et plus particulièrement ce qui m'interresse la class LIST
J'utilise CodeBlocks, et mon souci est que je n'arrive pas à utiliser LIST.
extrait de mon code :
entete :
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 25 26 27 28 29 30 31 32 33 34
| #ifndef STUDYSYSTEM_H_INCLUDED
#define STUDYSYSTEM_H_INCLUDED
#include <C:\Data\Dev\Processor\Include\Galerie.h>
//#include <stdexcept> //required for defining and catching standard exceptions
#include <List>
using namespace std;
enum SolveSystem
{
SS_Simple = 1,
SS_Hardy_Cross =2
};
typedef list<CNode> TNodesList;
typedef list<CSection> TSectionsList;
typedef list<CLine> TLinesList;
class CStudySytem
{
public:
TNodesList NodesList;
TSectionsList SectionsList;
TLinesList LineList;
CStudySytem();
virtual ~CStudySytem();
void AddANode(PNode N);
protected:
private:
};
#endif // SYSTEM_H_INCLUDED |
source :
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 25 26 27 28 29 30 31
| #include <C:\Data\Dev\Processor\Include\StudySystem.h>
#include<List>
using namespace std;
/** @brief CStudySytem
*
* @todo: document this function
*/
CStudySytem::CStudySytem()
{
}
/** @brief ~CStudySytem
*
* @todo: document this function
*/
CStudySytem::~CStudySytem()
{
}
/** @brief Add a new node to the system
*
* @todo: document this function
*/
void CStudySytem::AddANode(PNode N)
{
NodesList.push_back(N);
} |
la completion de code pour "NodesList." me propose que ERASE et INSERT ... ?
Avec mon pus_back(N) j'ai le message d'erreur :
Citation:
C:\Data\Dev\Processor\Include\StudySystem.cpp|30|error: no matching function for call to `std::list<CNode, std::allocator<CNode> >::push_back(CNode*&)'|
Tous les tuto, les faq que je trouve montre des exemples simple avec des methodes push_back, push_front, reverse, ... ELLES SONT OU ?
J'ai lu ici que la STL n'etait pas integree avec CodeBlocks. OK. Je l'ai telechargé sur http://jlecomte.ifrance.com/c++/c++-...raries-fr.html J'ai consulté le code et c'est bizarre je trouve des methodes _push_back_aux ... qui demande un autre parametre ...
bref je n'y comprends rien !
Est ce que qqun pourrait éclairer ma lanterne ?
Merci d'avance.