sobol3k Temat założony przez niniejszego użytkownika |
error zmienne was not declared in this scope » 2016-11-29 13:13:07 Uczę się programować obiektowo lecz mam problem z deklaracją zmiennych... main.cpp #include <iostream> #include "klasa.h"
using namespace std;
int main() { Glowna g1; g1.menu(); g1.pobierz_dane( model, marka, rocznik, pojemniosc_silnika, typ_paliwa, liczba_drzwi ); }
klasa.h #include <iostream>
using namespace std;
class Glowna { private: string marka; string model; string typ_paliwa; string kolor; int liczba_drzwi; int rocznik; float pojemnosc_silnika; public: void menu(); void pobierz_dane( string m, string mo, int r, float p, string t, int l ); void pokaz_dane(); };
funkcje.cpp #include <iostream> #include <windows.h> #include "klasa.h"
using namespace std;
void Glowna::menu() { unsigned short wybor; cout << "BAZA SAMOCHODOW" << endl; cout << "---------------" << endl; cout << "1. Dodaj samochod do bazy" << endl; cout << "2. Wczytaj baze samochodow" << endl; cout << "3. Wyjdz" << endl << endl; cout << "Twoj wybor: "; cin >> wybor; switch( wybor ) { case 1: { } case 2: { } case 3: { } } }
void pobierz_dane( string m, string mo, int r, float p, string t, int l ) { system( "cls" ); cout << "Podaj marke: "; cin >> m; cout << endl; cout << "Podaj model: "; cin >> mo; cout << "Podaj rocznik: "; cin >> r; cout << "Podaj pojemnosc silnika: "; cin >> p; cout << endl; cout << "Podaj typ paliwa (disesel/benzyna): "; cin >> t; cout << "Podaj ilosc drzwi (3/4/5): "; cin >> l; }
|
|
michal11 |
» 2016-11-29 13:43:42 g1.pobierz_dane( model, marka, rocznik, pojemniosc_silnika, typ_paliwa, liczba_drzwi ); w tej linijce w main skąd kompilator ma wiedzieć co to sa za zmienne skoro nigdzie ich nie zadeklarowałeś? |
|
sobol3k Temat założony przez niniejszego użytkownika |
» 2016-11-29 13:50:42 zadeklarowałem przecież w pliku klasa.h |
|
karambaHZP |
» 2016-11-29 13:54:12 zadeklarowałem przecież w pliku klasa.h |
Co z tego, że gdzieś tam masz zadeklarowane takie zmienne, skoro w tym miejscu nie są one znane? Pomyśl w jakim są skopie i jaki mają poziom dostępu. |
|
sobol3k Temat założony przez niniejszego użytkownika |
» 2016-11-29 14:05:37 To w takim razie te zmienne mam umiescic w pliku main.cpp jako globalne czy zmienic poziom dostepu z private na public w klasie.h |
|
Anim |
» 2016-11-29 14:12:44 Odwołuj się do nich za pomocą wartości :) zauważ, że jak wcześniej pisałeś funkcje, to nie robiłeś tak: void funkcja( int raz, int dwa ) { }
int main() { funkcja( int raz, int dwa ); }
tylko robiłeś tak: void funkcja( int raz, int dwa ) { }
int main() { int x, y; x = 10; y = 15; funkcja( x, y ); }
Tak samo postępuj z klasami :) |
|
sobol3k Temat założony przez niniejszego użytkownika |
» 2016-11-29 14:19:32 Nadal nie czaje moglbys mi to ktoś bardzie łopatologicznie wytłumaczyć? A jak nie to sobie utworze zmienne lokalne w funkcji i nie będe się z tym męczył. |
|
Anim |
» 2016-11-29 14:33:16 hm. Pozwoliłem sobie przejrzeć Twoją aktywność na forum. I zauważyłem, że spróbowałeś wejść w obiektówkę niedawno. I odnoszę wrażenie, że znalazłeś przykład jakiejś klasy i próbujesz ją dostosować do swoich potrzeb. Jeśli się mylę to przepraszam. A jeśli mam rację to polecam poświęcić dwa dni na zrobienie fragmentu kursu:
http://cpp0x.pl/kursy/Programowanie-obiektowe-C++/486
to naprawdę pożyteczna rzecz ^^ Szybko chwycisz to co tam jest napisane :) i Twój problem szybko okaże się błahym. |
|
« 1 » 2 |