Określanie wartości obiektów w innym pliku
Ostatnio zmodyfikowano 2017-10-11 18:20
zeek918 Temat założony przez niniejszego użytkownika |
Określanie wartości obiektów w innym pliku » 2017-10-11 17:28:00 Witam Chciałbym zrobić symulator poruszania się po domu w konsoli z tym warunkiem że pokoi może być np. 10, każdy będzie miał swoje id, nazwe pozycji oraz tresc opisujaca wygląd pokoju. Chciałbym to zrobić na tej zasadzie że w pliku main jedynie będę wczytywał określone w innym pliku dane, plik hpp będzie zawierał klase w której będą określone atrybuty klasy a w jeszcze innym pliku każdy pokój będzie miał swoje okreslenie tzn, ze lazienka bedzie miec id=1, nazwe lazienka i tresc= znajduje sie tu duze lustro, tak samo z salonem, kuchnią i innymi pokojami. Problem w tym że nie wiem jak to wszystko ładnie podzielić żeby działało i dało się wszystko wczytać do maina. Liczę na waszą pomoc #include <iostream> #include "a.hpp"
using namespace std;
int main() { Pomieszczenie korytarz_gl; cout << korytarz_gl.tresc << endl; return 0; }
#ifndef a_hpp #define a_hpp
using namespace std;
class Pomieszczenie { public: int id; int id1; string pozycja; string tresc; void wybierz_sciezke(); };
#endif
#include <iostream> #include <conio.h> #include "a.hpp"
using namespace std;
Pomieszczenie korytarz_gl; korytarz_gl.id = 1; korytarz_gl.pozycja = "asd"; korytarz_gl.tresc = "asdasdasdasd";
|
|
YooSy |
» 2017-10-11 17:45:09 W plik cpp zdefiniowany jest obiekt korytarz_gl, ale jest on widoczny tylko w tym pliku. Obiekt korytarza powinien być tak zefiniowany w main(), a w plik cpp rozwiń metodę wybierz_sciezke. |
|
zeek918 Temat założony przez niniejszego użytkownika |
» 2017-10-11 17:47:41 A nie dałoby rady zdefiniować tego korytarza w innym pliku i dołączyć go do maina?:( |
|
YooSy |
» 2017-10-11 17:58:23 1. Nie ma takiej potrzeby. Zdefiniuj obiekt pomieszczenia za pomocą konstruktora. 2. Korzystanie z using namespace std; w pliku nagłówkowym jest zła praktyką. 3. Zhermetyzuj dane w klasie i udostępnij tylko potrzebny interface. |
|
zeek918 Temat założony przez niniejszego użytkownika |
» 2017-10-11 18:14:14 Bez using namespace std; nie działa mi string :) |
|
YooSy |
» 2017-10-11 18:20:31 Niemożliwe. Próbowałeś dopisać std::?
Poszerz wiedzę o klasach i wróć do projektu. Brakuje Ci podstaw i szybko zniechęcisz się niepowodzeniami, bez zrozumienia, jak to działa. |
|
« 1 » |