infinium Temat założony przez niniejszego użytkownika |
Przypisywanie jednej wartości w klasie » 2013-04-26 23:02:45 Hej. Mam następujący problem. Tworzę dwa obiekty tej samej klasy, dajmy na to A i B. Każda jest opisana trzema zmiennymi typu double: x, y, z. Potrzebuję wprowadzać y oraz z osobno dla każdego obiektu, ale x wprowadzić tylko raz i przypisać tę wartość dla obu obiektów. Czy jest to możliwe? Jeśli tak to bardzo proszę, powiedzcie jak to zrobić. |
|
crash |
» 2013-04-26 23:45:01 Nie wiem czy to Cię zadowoli, jest takie cuś jak pola statyczne klasy - pola opatrzone słowem kluczowym static.
Za mało wiadomo o Twoim problemie i za dużo jest pytań. Np.: czy będzie jeszcze trzeci, czwarty, ... n-ty obiekt klasy itd, itp |
|
usmiech |
» 2013-04-27 01:28:03 Jest to mozliwe, najprosciej przez konstruktora :) |
|
pekfos |
» 2013-04-27 10:29:36 Konstruktor, statyczne zmienne na wartości domyślne i statyczne metody na ich ustawianie. |
|
infinium Temat założony przez niniejszego użytkownika |
» 2013-04-27 11:29:13 crash: Nie będzie więcej, potrzebne mi tylko dwa obiekty klasy. Poczytam w takim razie o konstruktorach, bo szczerze mówiąc do tej pory nie były mi potrzebne i nie wiem jak działają ;)
Po całym dniu czytania i kombinowania nie chce mi to działać i kompletnie nie mam pomysłu jak to wykorzystać. Pomóżcie proszę. |
|
Monika90 |
» 2013-04-28 06:53:21 Doprawdy trudno zgadnąć, o co Ci chodzi. Załóżmy, że masz: struct T { double x, y, z; };
T a, b;
to można np. tak: cin >> a.x >> a.y >> a.z >> b.y >> b.z; b.x = a.x;
Natomiast jeżeli wolisz użyć składowych prywatnych i konstruktorów: class T { public: T( double x, double y, double z ) : x( x ) , y( y ) , z( z ) { } private: double x, y, z; };
double x, y, z; cin >> x >> y >> z; T a( x, y, z ); cin >> y >> z; T b( x, y, z );
Pominęłam szczegóły takie jak sprawdzanie poprawności wczytania ze strumienia. |
|
infinium Temat założony przez niniejszego użytkownika |
» 2013-04-28 12:46:31 Dokładnie o to chodziło, dzięki wielkie, po drobnej modyfikacji wszystko działa ;) |
|
« 1 » |