Bonjour.
Voila mon problème :
Jutilise un code suivant depuis très longtemps sur Visual studio 6 :
Code :
- Cinematic.CinematicEvent.insert(&Cinematic.CinematicEvent[Selected],Tmp);
|
Et il ne ma jamais posé de problème.
Mais voilà. Aujourdhui je suis passé à Visual Studio 8 (2005) et il me donne sur cette ligne une erreur avec pour commentaire :
mapeditor\main.cpp(510) : error C2664: 'std::_Vector_iterator<_Ty,_Alloc> std::vector<_Ty>::insert(std::_Vector_iterator<_Ty,_Alloc>,const _Ty & )' : cannot convert parameter 1 from '_CinematicEvent *' to 'std::_Vector_iterator<_Ty,_Alloc>'
with
[
_Ty=_CinematicEvent,
_Alloc=std::allocator<_CinematicEvent>
]
No constructor could take the source type, or constructor overload resolution was ambiguous
Je ne vois vraiment pas ou est le problème ni comment le résoudre donc si quelquun ici à la solution
ce serai cool quil (quelle) maide.
Jai la même erreur sous une autre forme ici :
Code :
- _Character* _Characters::SeekCharacter(int ID)
- {
- vector <_Character>::iterator it;
- for (it=this->Character.begin();it!=this->Character.end();it++)
- if(it->ID==ID) return it; //error
- return NULL;
- }
|
(pour la ligne avec error)
error C2440: 'return' : cannot convert from 'std::_Vector_iterator<_Ty,_Alloc>' to '_Character *'
with
[
_Ty=_Character,
_Alloc=std::allocator<_Character>
]
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
Voila.
Merci davance.