Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Tworzenie objektów w innym pliku

Ostatnio zmodyfikowano 2020-11-23 21:33
Autor Wiadomość
Frozenx24
Temat założony przez niniejszego użytkownika
Tworzenie objektów w innym pliku
» 2020-11-23 18:27:56
Witam, zmagam się z pewnym problemem.
Utworzyłem klasę w pliku .h. Mam zamiar utworzyć kilka objektów pod daną klasę, jednak nie chcę tego robić w funkcji main, czy istnieje możliwość, aby tworzyć objekty w innych plikach .cpp albo .h?
P-177739
pekfos
» 2020-11-23 18:34:15
Tak. Masz jakiś problem, czy po prostu nie próbowałeś?
P-177740
Frozenx24
Temat założony przez niniejszego użytkownika
» 2020-11-23 19:13:24
Próbowałem, jednak wyskakują mi jakieś błędy :/
Jak powinno coś takiego wyglądać w kodzie?
P-177741
pekfos
» 2020-11-23 20:29:50
Zmienną tworzysz jak każdą inną. Lepiej podaj ten kod i błędy.
P-177742
Frozenx24
Temat założony przez niniejszego użytkownika
» 2020-11-23 20:39:41
Main.cpp:

#include <iostream>
#include "head.h"
using namespace std;

int main()
{
cout << Golf.nazwa << endl;

}

head.h:

#include <iostream>
using namespace std;

class Samochod
{
public:
string nazwa;
int rocznik;
int przebieg;
string wlasciciel;
}

samochody.cpp:

#include <iostream>
#include "head.h"

using namespace std;

Samochod Golf;
Golf.nazwa="Golf"
Golf.roczink=1999;
Golf.przebieg=200;
Golf.wlasciciel="Nowak"
_______________________
W pliku samochody.cpp chciałbym zrobić coś typu bazy danych, a w pliku Main je odczytywać.
P-177743
pekfos
» 2020-11-23 21:22:45
Żeby cokolwiek było widoczne w innym pliku musi mieć odpowiednią deklarację, najlepiej w pliku nagłówkowym. Deklaracja zmiennej globalnej wygląda tak:
C/C++
extern Samochod Golf;

C/C++
Golf.nazwa = "Golf"
Golf.roczink = 1999;
Golf.przebieg = 200;
Golf.wlasciciel = "Nowak"
To są instrukcje, a instrukcje muszą być w jakiejś funkcji, nie mogą być rzucone luzem do pliku. Możesz to na razie zapisać jako inicjalizację struktury, żeby nie tworzyć na to funkcji:
C/C++
Samochod Golf = { "Golf", 1999, 200, "Nowak" };
P-177744
Frozenx24
Temat założony przez niniejszego użytkownika
» 2020-11-23 21:33:13
O to mi chodziło, dzięki wielkie!
P-177745
« 1 »
  Strona 1 z 1