Czy metody w klasie mogą być prywatne?
Ostatnio zmodyfikowano 2011-02-12 12:50
marek Temat założony przez niniejszego użytkownika |
Czy metody w klasie mogą być prywatne? » 2011-02-10 11:09:07 Męczę sie z programowaniem obiektowym. Idzie mi jak po grudzie. To że zmienne klasy mogą być być prywatne i publiczne, to czuję. Tak samo oczywiste jest dla mnie że metoda może być publiczna. Nie bardzo wiem natomiast jak interpretować metodę która jest prywatna. Tzn że metoda dziala wewnątrz klasy? Co to znaczy że dziala wewnatrz klasy? Czy ktoś mi poda prosty i działający program z prywatną metodą?
A teraz pytanie ogólne.
Narazie nie widzę zalet programowania obiektowego. Być może ujawniają sie one dopiero przy dużych programach.
Czy programowanie obiektowe to takie wielkie aj waj?
Czy są zawodowcy którzy nie korzystają z tego narzędzia? Jak to wygląda procentowo?
|
|
malan |
» 2011-02-10 11:40:03 Tzn że metoda dziala wewnątrz klasy? |
Tak- działa wewnątrz klasy i tylko tam. Co to znaczy że dziala wewnatrz klasy? |
To, że możesz ją wywołać tylko wewnątrz innych metod tej klasy. Czy ktoś mi poda prosty i działający program z prywatną metodą? |
#include <iostream>
class Foo { public: Foo( int newFoo ) : foo( newFoo ) { } int getFoo() const { return foo; } int getFooAfterMagicRemaking() { magicRemaking(); return foo; } private: void magicRemaking() { foo = 13 * 2 * 2 + 17; } int foo; };
int main() { Foo myFoo( 666 ); std::cout << myFoo.getFooAfterMagicRemaking(); std::cin.sync(); std::cin.get(); } |
|
marek Temat założony przez niniejszego użytkownika |
» 2011-02-10 22:07:08 Malan
Dzięki
Jutro postaram się przekumać.
Ale tak przy okazji.
Czujesz wyższość Świąt Wielkiej Nocy nad świętami Bożego Narodzenia?
Czujesz wyższość Programowania Obiektowego nad Programowaniem Strukturalnym?
|
|
malan |
» 2011-02-10 22:32:30 Czujesz wyższość Świąt Wielkiej Nocy nad świętami Bożego Narodzenia? |
false Czujesz wyższość Programowania Obiektowego nad Programowaniem Strukturalnym? |
true |
|
dmx81 |
» 2011-02-12 12:50:25 majac pilota do dvd zastanawiasz sie, co sie dzieje, kiedy uzyjesz przycisku PLAY? PLAY w tym przypadku to metoda (funkcja skladowa) publiczna, a wszystko inne, co dzieje sie pomiedzy wcisnieciem przycisku a startem odtwarzania - to juz sa ukryte dla nas, uzytkownikow tego urzadzenia, metody prywatne.
Oczywiscie konstruktor urzadzenia zna te prywatne metody (tak jak projektant kodu zna prywatne metody), ale ma mozliwosc ich ukrywania przed uzytkownikiem, dostarczajac jedynie metody publiczne - czyli INTERFEJS (tak ladnie spolszczony wyraz)
przykladowo w gierce - wcisnieciu strzalki przyporzadkujesz metode - podskocz. a ta metoda publiczna, bedzie miala ukryte w sobie metody np. sprawdzajace, czy nie wystepuje kolizja
Mam nadzieje, ze rozumiesz sens tworzenia prywatnych metod. |
|
« 1 » |