wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :2359

Membres en ligne : 0
Invités en ligne : 4

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Développement C/C++
» Vector Warning
Conversation : Vector Warning
25-11-2007 17:15:43  Vector Warning #1
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
Salut,

Dans mon programme j'utilise des verctor à 2 dimenssions et j'ai à chaque fois que je compile des warnng qui s'affiche c'est très désagréable surtout que ça marche niquel.
Donc le warning c'est ça :

Code:

 
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h||In member function `std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > RpgCarteFrame::GetSave()':|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h|82|warning: '__cur' might be used uninitialized in this function|
\mingw\include\c++\3.4.5\bits\stl_vector.h||In member function `std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&) [with _Tp = std::vector<int, std::allocator<int> >, _Alloc = std::allocator<std::vector<int, std::allocator<int> > >]':|
\mingw\include\c++\3.4.5\bits\stl_vector.h|715|warning: '__result' might be used uninitialized in this function|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h|82|warning: '__cur' might be used uninitialized in this function|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h|82|warning: '__cur' might be used uninitialized in this function|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h||In member function `void std::vector<_Tp, _Alloc>::_M_fill_insert(__gnu_cxx::__normal_iterator<typename _Alloc::pointer, std::vector<_Tp, _Alloc> >, size_t, const _Tp&) [with _Tp = std::vector<int, std::allocator<int> >, _Alloc = std::allocator<std::vector<int, std::allocator<int> > >]':|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h|82|warning: '__cur' might be used uninitialized in this function|
\mingw\include\c++\3.4.5\bits\stl_uninitialized.h|82|warning: '__cur' might be used uninitialized in this function|
||=== Build finished: 0 errors, 6 warnings ===|
 
 


Qu'est-ce ça veut dire et comment arranger le problème sachant que je les déclare et crée comme ça :

Code Cpp:

 
//Dans le .h
std::vector < std::vector<int> > couche1;
std::vector < std::vector<int> > couche2;
std::vector < std::vector<int> > couche3;
 
//Dans le .cpp
 
    couche1.resize(x);
    for(i=0;i<couche1.size();i++)
    {
        couche1[i].resize(y);
    }
    for(i=0;i<couche1.size();i++)
    {
        for(j=0;j<couche1[i].size();j++)
            couche1[i][j] = 0;
    }
    couche2 = couche1;
    couche3 = couche1;
 
25-11-2007 18:11:24  Re: Vector Warning #2
blend (Membre)
Inscrit le : 07-10-2007
Messages: 129
Snippets: 0
Tutoriels: 0
Hors ligne
Arf, là ça va, il y a pire ^^....

Rien ne vaut la 2D pour éviter les problèmes de profondeur.
25-11-2007 18:15:33  Re: Vector Warning #3
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
Pourquoi ?
25-11-2007 18:35:12  Re: Vector Warning #4
blend (Membre)
Inscrit le : 07-10-2007
Messages: 129
Snippets: 0
Tutoriels: 0
Hors ligne
Dès que l'on fait qqch avec les templates, le compilateur gueule XD...

Rien ne vaut la 2D pour éviter les problèmes de profondeur.
25-11-2007 21:14:17  Re: Vector Warning #5
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
C'est nul et ya pas moyen d'y remédier ?
25-11-2007 22:15:18  Re: Vector Warning #6
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1383
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Baisses le son ... :D

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
25-11-2007 22:20:42  Re: Vector Warning #7
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
de quoi ?
25-11-2007 22:41:21  Re: Vector Warning #8
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1383
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Du compilateur qui gueule, comme ça tu ne l'entendras plus....

Désolé -> []

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
26-11-2007 18:29:44  Re: Vector Warning #9
blend (Membre)
Inscrit le : 07-10-2007
Messages: 129
Snippets: 0
Tutoriels: 0
Hors ligne
@Xav': mouais ..., 7/10 pour te faire plaisir XD...
Pour GCC, il y l'option -fpermissive qui permet de réduire certains cris et problèmes (limitation à 500 boucle de récursion templatisées), mais ça ne changera rien à ton problème car ici GCC t'avertit qu'il ne peut pas connaître la taille de tes vectors à la compil'

Rien ne vaut la 2D pour éviter les problèmes de profondeur.
26-11-2007 19:04:25  Re: Vector Warning #10
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
Je peut les mettreent de taille 1 ? le problème c'est qu'on dirai que ça marche pas..
26-11-2007 19:25:22  Re: Vector Warning #11
blend (Membre)
Inscrit le : 07-10-2007
Messages: 129
Snippets: 0
Tutoriels: 0
Hors ligne
De toute façon GCC ne pourra jamais définir combien de place prend un vecteur de vecteur ^^.
Tu n'as pas de limites de taille pour tes vecteurs si c'est ce que tu as compris, ne t'inquiète pas , il y en a pour des trucs complexes (calcul de Sinus, cosinus, et tout les autres calculs mathématique via les templates :D ) mais c'est pas le cas ici ;) .

Dernière modification par blend (26-11-2007 19:26:38)


Rien ne vaut la 2D pour éviter les problèmes de profondeur.
26-11-2007 19:33:50  Re: Vector Warning #12
Warzer (Membre)
Inscrit le : 05-10-2007
Messages: 284
Snippets: 4
Tutoriels: 0
Hors ligne
Zut alors j'aime pas voir des warnings ...
27-11-2007 19:26:16  Re: Vector Warning #13
blend (Membre)
Inscrit le : 07-10-2007
Messages: 129
Snippets: 0
Tutoriels: 0
Hors ligne
Moi non plus, c'est pour ça que j'essaie de bien coder :D

Rien ne vaut la 2D pour éviter les problèmes de profondeur.
Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Développement C/C++
» Vector Warning