Ir ao conteúdo
  • Cadastre-se

Error: no matching function for call to ‘pilha::iniciarpilha(pilha**)


J. Doe

Posts recomendados

Olá galera, estou desenvolvendo uma pilha em c++, criei uma classe chamada Pilha, e criei o método pilha passando como parâmetros a pilha e os dados que serão armazenados na pilha, porém, estou passando como parâmetro a pilha como ponteiro e na minha main() estou chamando a pilha passando o & contudo, sempre quando coloco deste modo no momento da compilação aparece a mensagem no matching function for call to. já tentei colocar ponteiro de ponteiro mais mesmo assim dá um erro.

Alguém ai pode me dá um ajudinha.

 

o método que estou criando para empilhar é:

void empilhar (PILHA *pilha, DADOS dados){ //Os dados passados aqui tem uma estrutura para eles
            NO_PILHA *novo = (NO_PILHA*) malloc (sizeof(NO_PILHA));
            if(novo == NULL)
                cout << "NOVA PILHA CRIADA COM SUCESSO" << endl;
            else{
                novo->conteudo = dados;
                cout << "OI 2" << endl;
                pilha->topo = novo;
                cout << "OI 1" << endl;
                novo->prox = pilha->topo;
                cout << "Testando, inserido com sucesso" << endl;
            }
        };

 

Na main(), estou chamando deste modo:

Pilha *pil = new Pilha(); //Criando objeto pilha
PILHA *pilha = NULL; //Declarando a pilha na main

pil->empilhar(&pilha, conteudos); //Chamando a função para empilhar

Link para o comentário
Compartilhar em outros sites

Citação

Pilha *pil = new Pilha(); //Criando objeto pilha

nao será Pilha *pil = new Pilha. ou Pilha *pil = new Pilha[x] ? nunca vi Pilha *pil = new Pilha(); tem que estar dando erro aí nessa linha.

basicamente no matching function for call to ‘pilha::iniciarpilha(pilha**) está te dizendo que dentro da classe pilha nao há algo semelhante a iniciarpilha(pilha**).

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...