Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Uruchomienie konstruktora z parametrami klasy bazowej w klasie pochodnej( z klasy bazowej) nie deklerując obiektu typu klasy bazowej.

Ostatnio zmodyfikowano 2015-11-20 08:55
Autor Wiadomość
00Andre
Temat założony przez niniejszego użytkownika
[C++] Uruchomienie konstruktora z parametrami klasy bazowej w klasie pochodnej( z klasy bazowej) nie deklerując obiektu typu klasy bazowej.
» 2015-11-20 08:19:55
Witam

Mam problem taki, że mam klasę bazową
C/C++
class C_BAZOWA
{
protected:
    unsigned a;
   
public:
    C_BAZOWA( unsigned f_a, unsigned f_b ) { a = f_a + f_b; );
       
        void const Print() { std::cout << a << std::endl; };
       
        ~C_BAZOWA() { };
    };


i klasę pochodnią
C/C++
class C_POCHODNIA
    : public C_BAZOWA
{
protected:
    unsigned x, y;
   
public:
    C_POCHODNIA( unsigned f_x, unsigned f_y ) { x = f_x; y = f_y; );
       
        void const PrintPos() { std::cout << x << ":" << y << std::endl; };
       
        virtual ~C_POCHODNIA() { };
    };

i jak chce stworzyć nowy obiekt typu C_POCHODNIA
C/C++
...
C_POCHODNIA kl1( 5, 2 );

Chce uruchomić konstruktor z parametrami klasy bazowej

C/C++
kl1....jak napisa ć to ?

Od razu mówię, że nie może być konstruktor bez parametrów i listy inicjalizacyjnej

Wie ktoś jak to rozwiązać.
P-140417
carlosmay
» 2015-11-20 08:55:38
C/C++
C_POCHODNIA( unsigned f_x, unsigned f_y )
    : C_BAZOWA( f_x, f_y )
     , x( f_x )
     , y( f_y )
{ }
 jeśli argumentami dal klasy bazowej mają być argumenty klasy pochodnej.

Z powodzeniem możesz dać składową klasy bazowej prywatną, a odczyt i modyfikowanie zrobić za pośrednictwem metod.
C/C++
unsigned get_skladowa_bazowej() { return a; }
P-140418
« 1 »
  Strona 1 z 1