Je voudrais faire une map qui associe un pointeur sur un objet de classe agent et ses coordonnées (2 entiers pour commencer), j'ai donc fait :
map<Agent*, int[1]> agentList;
et un appel du genre:
agentCoord[agent][0]+=deltaX;
mais Oh rage:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| 1>c:\program files\microsoft visual studio 8\vc\include\map(172) : error C2440: '<function-style-cast>' : cannot convert from 'int' to 'int [1]'
1> There are no conversions to array types, although there are conversions to references or pointers to arrays
1> c:\program files\microsoft visual studio 8\vc\include\map(167) : while compiling class template member function 'int (&std::map<_Kty,_Ty>::operator [](Agent *const &))[1]'
1> with
1> [
1> _Kty=Agent *,
1> _Ty=int [1]
1> ]
1> c:\2005\1\sma\staticgridenv.h(43) : see reference to class template instantiation 'std::map<_Kty,_Ty>' being compiled
1> with
1> [
1> _Kty=Agent *,
1> _Ty=int [1]
1> ] |
Ou est ce que cela coince?
Question bonux, j'ai pas mal de fonction qui ont besoin de la référence sur l'objet appelant, y aurait il un équivalent à "this" pour cela?
Partager