• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed obiekty jednej klasy w klasie drugiej c++

Object Storage Arubacloud
–1 głos
88 wizyt
pytanie zadane 22 października 2018 w C i C++ przez niezalogowany
zamknięte 31 marca 2019

Mam taki pseudo kod jak poniżej. Chodzi oto ze klocki (Klocek Trojkatny_1......) nie zmieniają się w main() mimo rożnych parametrów obiektów (obiekty_zbudowane_klockow okret1 .....), chyba ,że dodam  je do ciała każdej metody łódka (lodka_1, .......) .

Czy ktoś wie jak to obejść.

#include <iostream>

using namespace std;



struct punkt
{
  int x;
  int y;
};

class Klocek
{ 
	punkt m_obiekt_punkt_poczatkowy;
	string m_opis_ksztalu;
 public:
    Klocek (punkt m_obiekt_punkt_poczatkowy, string m_opis_ksztalu)	{
	   m_obiekt_punkt_poczatkowy=obiekt_punkt_poczatkowy;
	   m_opis_ksztalu = opis_ksztalu;}

   string zamien_Klocek_na_string()
	{
	.................................
	}
};

class obiekty_zbudowane_klockow
{
	string wysokosc;
	string szerokosc;
	string sklala;
	
public:
	
	Klocek Trojkatny_1{{x,y};"trojkat"*szerokosc}; // obiekty utworzone ale //chciałbym aby były dynamiczne czyli jak zmienię pola tej klasy to i zmienią mi //się te obiekty 
	Klocek Trojkatny_2{{x,y};"trojkat"*wysokosc};
	Klocek Trojkatny_3{{x,y};"trojkat"*skala};
	
	Klocek czworokatny_1{{x,y};"czworokat"*szerokosc};
	Klocek czworokatny_2{{x,y};"czworokat"*wysokosc};
	Klocek czworokatny_3{{x,y};"czworokat"*skala};

	obiekty_zbudowane_klockow(string wysokoscwysokosc, string 
                               szerokoscszerokosc, string sklalasklala){
				
					wysokosc=wysokoscwysokosc;
					szerokosc=szerokoscszerokosc;
					sklala=sklalasklala;
					}
	
	string lodka_1(int x,int y) {
	
	string Docelowy{}
	Docelowy+=Trojkatny_1.zamien_Klocek_na_string();
        for (i=0;i<3;i++)	{
            x+=szerkosc;
            Docelowy+=czworokatny_1.zamien_Klocek_na_string();
            }
        x+=szerkosc;
        Docelowy+=Trojkatny_3.zamien_Klocek_na_string();
	
	Docelowy+="\n"
	
	Docelowy+=Trojkatny_1.zamien_Klocek_na_string();
        for (i=0;i<2;i++){	
            x+=szerkosc;
            Docelowy+=czworokatny_1.zamien_Klocek_na_string();
            }
         x+=szerkosc;   
        Docelowy+=Trojkatny_3.zamien_Klocek_na_string();
	
	_ _ _ _ _
//	\|_|_|_|/
// 	 \|_|_|/    łódka 1
	
	return  Docelowy
	}
	
	
	string lodka_2(int x,int y) {
	
        string Docelowy;
        Docelowy+=Trojkatny_3.zamien_Klocek_na_string();
	
        x+=szerkosc;
        Docelowy+=czworokatny_3.zamien_Klocek_na_string();

        x+=szerokosc;
        Docelowy+=Trojkatny_3.zamien_Klocek_na_string();
	
//	__ ____ __
//	\ |    | /
//	 \|____|/  łódka 2
	
	return  Docelowy;
	}

};


int main()

	string przystan;
	obiekty_zbudowane_klockow okret1(1,2,1), okret2(2,1,3), okret3(3,3,1), okret4(1,10,2);

	przystan=okret1.lodka_1+okret1.lodka_2+okret3.lodka_2+okret3.lodka_2+okret3.lodka_2;
	cout<<przystan<<endl;

	przystan=okret4.lodka_1+okret4.lodka_2+okret4.lodka_2+okret4.lodka_2+okret4.lodka_2;
	cout<<przystan<<endl;


return 0;
	


komentarz zamknięcia: bo temat nie aktualny i niema tu nic ciekawego.
komentarz 22 października 2018 przez RafalS VIP (122,820 p.)
Ciężko to nawet pseudokodem nazwać. On ma klamry niepodomykane. Popraw chociaż je, bo domyślanie się co miałeś na myśli jest mało ciekwe.
komentarz 23 października 2018 przez niezalogowany
edycja 23 października 2018
ok zrobione.

P.S

tak naprawdę to sobie poradziłem stosując zmienne globalnie i dynamiczne obiekty w mainie(), ale to rozwiązanie mało eleganckie tyle ze działa.

Podobne pytania

0 głosów
1 odpowiedź 179 wizyt
0 głosów
0 odpowiedzi 176 wizyt
0 głosów
0 odpowiedzi 107 wizyt

92,576 zapytań

141,426 odpowiedzi

319,651 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...