[SFML 1.6]Problem z wyswietlaniem zmiennej string
Ostatnio zmodyfikowano 2013-01-14 18:21
Menos Temat założony przez niniejszego użytkownika |
[SFML 1.6]Problem z wyswietlaniem zmiennej string » 2013-01-14 15:21:53 Mam problem z wyswietlaniem zmiennej string z klasy oto kod: #include "PytanieText.h" #include <sstream> #include <iostream> #include <cstdlib> #include <string> PytanieText::PytanieText( string pytanie, int dobra_odpowiedz ) : Pytanie( dobra_odpowiedz ) { this->dobra_odpowiedz = dobra_odpowiedz; this->pytanie = pytanie; }
PytanieText::~PytanieText() { } string PytanieText::get_tresc() { return string( pytanie ); }
PytanieText.h #ifndef PYTANIETEXT_H #define PYTANIETEXT_H #include "Pytanie.h" #include <sstream> #include <iostream> #include <cstdlib> #include <string>
class PytanieText : public Pytanie { public: PytanieText( string pytanie, int dobra_odpowiedz ); ~PytanieText(); string get_tresc(); protected: private: int dobra_odpowiedz; string pytanie; };
#endif
Kolokwium.cpp #include "Kolokwium.h" #include <iostream> #include <sstream> #include <cstdlib> #include <string>
using namespace std; using namespace sf;
Kolokwium::Kolokwium() { cout << "jest kolokwium" << endl; dodaj_pytania(); }
Kolokwium::~Kolokwium() { } bool Kolokwium::odpowiadaj( Gracz * gracz, RenderWindow & Okno ) { wyswietl_pytanie( Okno ); return 1; }
void Kolokwium::dodaj_pytania() { PytanieText pyt_1( "dupa", 1 ); v_pytan.push_back( & pyt_1 ); cout << "Dodalem pytanie" << endl; PytanieText pyt_2( "dupa2", 1 ); v_pytan.push_back( & pyt_2 ); cout << "Dodalem pytanie" << endl; PytanieText pyt_3( "dupa3", 1 ); v_pytan.push_back( & pyt_3 ); cout << "Dodalem pytanie" << endl; } int Kolokwium::losuj_pytanie() { int wielkosc_wektora = v_pytan.size(); cout << "ilosc: " << wielkosc_wektora; int nr = rand() % wielkosc_wektora; cout << "Wylosowalem " << nr << endl; return nr; } void Kolokwium::wyswietl_pytanie( RenderWindow & Okno )
{ String pytania; stringstream SSpytania; cout << "wielkosc " << v_pytan.size(); vector < PytanieText *>::iterator i; for( i = v_pytan.begin(); i != v_pytan.end(); i++ ) { cout << "przegladam wektor" << endl; cout <<( * i )->get_tresc(); } pytania.SetText( "FPS: " + SSpytania.str() ); Okno.Draw( pytania ); Okno.Display(); Okno.Clear(); SSpytania.str( "" ); }
Kolokwium.h #ifndef KOLOKWIUM_H #define KOLOKWIUM_H #include "WindowManager.h" #include "Pytanie.h" #include "PytanieText.h" #include "PytanieObrazkowe.h" #include <vector> #include <iostream>
class Kolokwium { public: Kolokwium(); ~Kolokwium(); bool odpowiadaj( Gracz * gracz, RenderWindow & Okno ); void wyswietl_pytanie( RenderWindow & Okno ); private: vector < PytanieText *> v_pytan; void dodaj_pytania(); int losuj_pytanie(); };
#endif
I przy przegladaniu wektora program nie moze pograc zmiennej string z innej klasy.. i nie wiem dlaczego... |
|
crash |
» 2013-01-14 18:21:45 Nie brakuje czegoś w zaprezentowanym przez Ciebie kodzie? Jak kompilować be funkcji main() ? |
|
« 1 » |