一个stl map 插入的问题
- C/C++ code
class AStarEngine{public: // 得到一个网络拓扑图 //data-road 格式是 每行两个数字 12 23 表示 12 和 23 节点之间相连 //map< int ,list<int> > NodeLinkInfo; 我现在想再这里存 ,某个节点 并把与之相连的节点的存到一个list 里面 // 然后现在对于 map 这个操作不会 ,不知道 如何插入 信息到这个 list里面去 void GetNodeInfo() { int isnode ,ienode; ifstream inputfile("data-road.txt"); if(!inputfile) { cout<< "file open error" <<endl; } while(inputfile >> isnode >> ienode ) { map<int, list <int > ::iterator iter = NodeLinkInfo.find(isnode); if(iter == NodeLinkInfo.end()) { } else {} } } list<NodeInfo> Execute(NodeInfo startnode ,NodeInfo endnode, int Condition) { }private: map< int ,list<int> > NodeLinkInfo;};[解决办法]
NodeLinkInfo[1].push_back(2); 不就行了
[解决办法]
NodeLinkInfo里面有几个数据?
[解决办法]
[解决办法]
map插入不需要判断是否存在 直接用[]访问左值如果key不存在就会自动创建一个