Skocz do zawartości
Elvis_

kilka pytan [C++]

Rekomendowane odpowiedzi

czesc

mam kilka pytan zwizanych z c++:

 

1) co oznacze przy deklaracji funkcji w klasie slowko virtual?

 

public:virtual double Pole();

co to oznacza dla klas pochodznych od tej?

 

2)

przyklad &operator+= (const przyklad &ab){     return *this = funkcja(ab);};
co dokladnie ta funkcja zwraca?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Co prawda w c++ z 2 lata nie napisalem linijki ale z tego co pamietam"

 

1. virtual to po prostu funkcja wirtualna do mechanizmu polimorfizmu.

chodzilo z grubsza o to ze kompilator widzac wywolanie typu objekt.Pole(); sprawdzi klase dla instancji objektu a nastepnie dla niej wywola dopowiednia funkcje Pole().

 

np

 

class Window // Base class for C++ virtual function example

{

public:

virtual void Create() // virtual function for C++ virtual function example

{

cout <<"Base class Window"<<endl;

}

};

 

class CommandButton : public Window

{

public:

void Create()

{

cout<<"Derived class Command Button - Overridden C++ virtual function"<<endl;

}

};

 

void main()

{

Window *x, *y;

 

x = new Window();

x->Create();

 

y = new CommandButton();

y->Create();

}

 

wyjscie

 

Base class Window

Derived class Command Button

 

przydaje sie gdy np uzywasz objektu w kontekscie jego rodzica a potrzebujesz wywolywac funkje dzieci (o ile nadpisuja w implementacji funkcje rodzica)

 

2.

 

to jest operator przypisania += czyli zwraca referencje do siebie

jak robisz

instancjaKlasyOpisanej+=instancjaPrzyklad;

to oczywisacie wywoluje sie operator+=, patrz pod zmienna instancjaKlasyOpisanej przypisaney jest wynik dzialania funjcji funkcja(instancjaPrzyklad);

 

mam nadzieje ze wyjasnilem o co chodzi.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...