| 12
 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
 35
 36
 
 |  
typedef std::map<cstd::cString, cstd::cTypes::DWORD>::const_iterator categorie_map_const_iterator;
typedef std::map<cstd::cTypes::DWORD, std::map<cstd::cString, cstd::cTypes::DWORD> >::const_iterator sous_categorie_map_const_iterator;
 
void
CTri::add(const cString& categorie) // ok ça fonctionne
{    
    if (_M_categorie_map.find(categorie) == _M_categorie_map.end())
    {
        _M_last_index_categorie++;
        _M_categorie_map[categorie] = _M_last_index_categorie;
    }
}
 
void
CTri::add(const cstd::cString& categorie, const cstd::cString& sous_categorie)
{
    categorie_map_const_iterator it_categorie;
    sous_categorie_map_const_iterator it_sous_categorie;
    cTypes::DWORD last_index_sous_categorie = 0;
    map<cString, cTypes::DWORD> m;
 
    add(categorie);
    it_categorie = _M_categorie_map.find(categorie);
    last_index_sous_categorie = getIndexMaxSousCategorie((*it_categorie).second);
 
    it_sous_categorie = _M_sous_categorie_map.find((*it_categorie).second);
    last_index_sous_categorie++;
 
     // première méthode:
     // (*it_sous_categorie).second[sous_categorie] = last_index_sous_categorie; <- le compilo il aime pas
 
     // deuxième méthode : 
     m = (*it_sous_categorie).second;						 <-au deuxième appel j'ai une violation d'accès
     m[sous_categorie] = last_index_sous_categorie;
} | 
Partager