c – 调试地图插入?

c – 调试地图插入?,第1张

概述我在向Map插入条目时遇到问题. #include <stdio.h>#include <vector>#include <stack>#include <map>using namespace std;class Nodo{public: vector<Nodo> Relaciones; int Valor; bool Visitado; No 我在向Map插入条目时遇到问题.

#include <stdio.h>#include <vector>#include <stack>#include <map>using namespace std;class Nodo{public:    vector<Nodo> Relaciones;    int Valor;    bool Visitado;    Nodo(int V)    {        Valor = V;        Visitado = false;    }};class Grafo{public:    Nodo *Raiz;    map<int,Nodo> Nodos;    Grafo(int V)    {        Raiz = new Nodo(V);        //Getting http://msdn.microsoft.com/en-us/library/s5b150wd(v=VS.100).aspx here        Nodos.insert(pair<int,Nodo>(V,Raiz));    }};
解决方法 您的类型不匹配.您正在将Nodo *传递给对构造函数,而它需要一个Nodo对象.

你声明:

Nodo *Raiz;

然后你试着打电话:

pair<int,Raiz)

期望int和Nodo.但是你把它传给了int和Nodo *.

你可能想要的是这个:

class Grafo{    public:        Nodo *Raiz;        map<int,Nodo*> Nodos;    //  change to pointer        Grafo(int V)        {            Raiz = new Nodo(V);            //Getting http://msdn.microsoft.com/en-us/library/s5b150wd(v=VS.100).aspx here            Nodos.insert(pair<int,Nodo*>(V,Raiz));   // change to pointer        }};
总结

以上是内存溢出为你收集整理的c – 调试地图插入?全部内容,希望文章能够帮你解决c – 调试地图插入?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1214221.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存