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

[C++] Problem z zapętlaniem

Ostatnio zmodyfikowano 2012-03-04 19:58
Autor Wiadomość
pekfos
» 2012-03-04 17:38:11
wywołać funkcję?
P-52007
akwes
» 2012-03-04 17:41:26
Napisałem nawet w poście dokładnie :<

Masz jakaś książkę o programowaniu? Najlepiej symfonię? Jest tam cały pięknie wytłumaczony dział o Dziedziczeniu i Klasach. Naprawdę dużo bardziej Ci pomoże, bo tłumaczenie wymaga nauczenia podstaw ;P
P-52008
fensz
Temat założony przez niniejszego użytkownika
» 2012-03-04 17:42:39

main.cpp(303): error C2352: 'CExp::UpdateEXP' : illegal call of non-static member function

C/C++
if( CCollision::PixelPerfectTest( Sprite, Sprite1 ) ) //Kolizja Andrzej - dom1
{
    App.Draw( Dymek );
    App.Draw( Help );
    txt.SetText( "Witam w remizie!" );
    App.Draw( txt );
    txt1.SetText( "Kliknij Enter, aby Andrzej wszedl do remizy. " );
    App.Draw( txt1 );
    // if(licznikwyr = 1) { licznikexp + 1; } else { return licznikexp; }
    if( App.GetInput().IsKeyDown( sf::Key::Return ) )
    { Map_01.SetImage( Buffer1 );
        CExp::UpdateEXP();
    }
}


Ta funkcja (tak dla testu) ma za zadanie dodać 1 Exp po wciśnięciu ENTER
P-52009
pekfos
» 2012-03-04 17:44:29
Musisz utworzyć obiekt klasy CExp. Inaczej nie wywołasz niestatycznej metody.
P-52010
fensz
Temat założony przez niniejszego użytkownika
» 2012-03-04 17:50:51
Dobra teraz sie pogubiłem. Prziecież obiektem jest tu UpdateExp
P-52011
pekfos
» 2012-03-04 18:11:15
Tu jest jakieś "UpdateExp"?
P-52012
akwes
» 2012-03-04 18:15:00
Programujesz bez podstawowej wiedzy o programowaniu obiektowym. Klasa to wzór według którego robi się obiekty, i te obiekty dopiero mogą wykonywać funkcje. Zainteresuj się książką :) naprawdę ;)
P-52013
fensz
Temat założony przez niniejszego użytkownika
» 2012-03-04 18:27:18
Ok, wiem co było źle. teraz zostaje mi powołanie licznika i koniec.

na początek powołałem sobie CExp

C/C++
CExp Exp_Game;


a później wsadziłem to do ciała

C/C++
if( App.GetInput().IsKeyDown( sf::Key::Return ) )
{
   
    Map_01.SetImage( Buffer1 );
    int licznik = 1;
    while( licznik > 0 )
    {
        Exp_Game.UpdateEXP();
        licznik--;
    }
}

}

Mogę więc teraz liczyć na małą podpowiedź - mianowicie jak rozegrać to, że po wciśnięciu ENTER exp doda się tylko raz, a nie w nieskończoność :)
P-52014
1 2 « 3 » 4
Poprzednia strona Strona 3 z 4 Następna strona