我有这样的地图:
map<prmNode,vector<prmEdge>,prmNodeComparator> nodo2archi;
Run Code Online (Sandbox Code Playgroud)
我需要有一张相同的地图副本.快速的方法是如何做到这一点的?我试过这个:
map<prmNode,vector<prmEdge>,prmNodeComparator> copiamap( nodo2archi );
Run Code Online (Sandbox Code Playgroud)
但它不起作用.copiamap是空的.非常感谢你
我想在这样的集合中插入一个向量:
set<vector<prmEdge> > cammini;
vector<prmEdge> vecEdge;
cammini.insert(vecEdge);
Run Code Online (Sandbox Code Playgroud)
我有这样的编译错误:
prmPlanner.cpp:1285: instantiated from here
/usr/include/c++/4.2/bits/stl_algobase.h:853: error: no match for ‘operator<’ in ‘__first1.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator* [with _Iterator = const prmEdge*, _Container = std::vector<prmEdge, std::allocator<prmEdge> >]() < __first2.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator* [with _Iterator = const prmEdge*, _Container = std::vector<prmEdge, std::allocator<prmEdge> >]()’
/usr/include/c++/4.2/bits/stl_algobase.h:855: error: no match for ‘operator<’ in ‘__first2.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator* [with _Iterator = const prmEdge*, _Container = std::vector<prmEdge, std::allocator<prmEdge> >]() < __first1.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator* [with _Iterator = const prmEdge*, _Container = std::vector<prmEdge, std::allocator<prmEdge> >]()’
make[1]: *** [prmPlanner.o] Errore …Run Code Online (Sandbox Code Playgroud) 我有一个浮点异常,我不知道为什么.
代码是这样的:
void calcola_fitness(){
vector<double> fitness;
int n=nodes.size();
int e=edges.size();
int dim=feasibility.size();
int feas=(feasibility[dim-1])*100;
int narchi=numarchicoll[dim-1]/e;
int numero_nodi=freePathNode.size()/n;
double dist_start_goal=node_dist(0,1);
int i,f,t;
double pathlenght=0;
int siize=freePathNode.size();
for(i=0;i!=siize-1; i++){
f=freePathNode[i].getIndex();
i++;
t=freePathNode[i].getIndex();
i--;
pathlenght=pathlenght+node_dist(f,t);
}
double pathlenghtnorm=pathlenght/10*dist_start_goal;
double fit=((double)numero_nodi+pathlenghtnorm+(double)narchi)*((double)feas);
fitness.push_back(fit);
}
Run Code Online (Sandbox Code Playgroud)
有人能帮助我吗?有什么问题?我可以解决这个问题吗?非常感谢你
c++ ×3