Dá-me o seguinte erro e não percebo o que está errado: [Linker error] undefined reference to `CD::CD(std::string, double)' CD.H // Declaracoes da classe Artigo de Depósitos à Ordem
#ifndef CD_H
#define CD_H
#include <iostream>
using namespace std;
#include "Artigo.h"
#include "Data.h"
class CD : public Artigo {
private:
string m_editora;
double m_lancamento;
public:
CD(string t="", double l=0.0, string e="");
CD(const CD& c);
double obtemDataLancamento() const;
string obtemEditora() const;
void mostraArtigo() const;
void escreveArtigo(ostream& os);
void leArtigo();
void leArtigo(istream& is);
const string obtemTipo() const;
};
#endif[/qode]
CD.CPP
[code]#include "CD.h"
CD::CD(string t, double l, string e)
: Artigo(t), m_lancamento (l), m_editora(e)
{
}
CD::CD(const CD& c)
: Artigo©, m_lancamento (c.m_lancamento), m_editora(c.m_editora)
{
}
string CD::obtemEditora() const{
return m_editora;
}
double CD::obtemDataLancamento() const
{
return m_lancamento;
}
void CD::mostraArtigo() const
{
Artigo::mostraArtigo();
cout << "Editora:" << m_editora << endl;
cout << "Data de lancamento:" << m_lancamento << endl;
}
void CD::escreveArtigo(ostream& os)
{
Artigo::escreveArtigo(os);
os << m_editora << endl;
os << m_lancamento << endl;
}
void CD::leArtigo()
{
Artigo::leArtigo();
cout << "Editora:";
cin >> m_editora;
cout << "Data de lancamento:";
cin >> m_lancamento;
}
void CD::leArtigo(istream& is)
{
Artigo::leArtigo(is);
is >> m_editora;
is >> m_lancamento;
}
const string CD::obtemTipo() const
{
return "CD";
} Alguém me pode ajudar a descobrir o problema? Obrigado.