Konstruktor w klasie dziedziczonej

0

Witam mam problem z konstruktorem oto kod :

VintagePort::VintagePort(const char *br, const char *st,int b, const char *nn, int y):Port(br, st, b)
    {
        nickname = new char [strlen(nn)+1];
        strcpy(nickname, nn);
        year = y;
    } 

Otóż kompilator wykrzykuje "undefined reference to Port::Port(const char , const char, int), przeciez instrukcją :Port(br,st,b) daje do zrozumienia, że chce jawnie wywołać konstruktor z klasy bazowej, a nie przekazac obiekt z klasy bazowej. Proszę o wytłumaczenie, z góry dziękuje i pozdrawiam.

0

pokaż definicje+deklaracje Port. tak to można tylko zgadywać że zła deklaracja (np nie pokrywająca się z implementacją) przeszkadza.

2

Masz coś skopane z projektem.
Ten błąd sygnalizuje, że prototyp konstruktora Port::Port(const char *, const char*, int) jest znany, ale treść tego konstruktora jest nieznana.

Najprawdopodobniej popełniłeś jeden z dwóch błędów:

  1. zapomniałeś zdefiniować ten konstruktor (zadeklarowałeś go tylko w nagłówku i na tym koniec).
  2. plik *.cpp z definicją konstruktora nie jest dołączony do projektu
0

Marek rozwiązał problem, i oczywiście banalny błąd - nie zdefiniowałem konstruktora... chyba czas na przerwe :D
Dzięki za pomoc. Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1