obiekty klas jako argumenty
Ostatnio zmodyfikowano 2013-07-05 10:42
Mr.J Temat założony przez niniejszego użytkownika |
obiekty klas jako argumenty » 2013-07-05 09:59:11 Witam, Zastanawiam sie czy przypadkiem czegos nie myle, bo program sie kompiluje, ale pewne rzeczy nie dzialaja tak jak powinny. Mam taka funkcje: void set_OBJ( object obj1, OBJ obj2 ) { obj2.set_occupied( true ); obj2.set_ID( obj1.get_ID() ); obj2.set_walls( obj1.get_walls() ); obj2.set_texture_box( obj1.get_texture_box().x, obj1.get_texture_box().y, obj1.get_texture_box().w, obj1.get_texture_box().h ); }
gdzie object obj1 to jakis tam obiekt ktory ustawiam podczas pisania kodu, OBJ obj2 to "slot" ktory przyjmuje postac tego obiektu, a funkcja jak widac ma wykonywac ta czynnosc w innej czesci kodu uruchamiam funkcje w ten sposob: set_OBJ( tree1, objSlot[ 5 ][ 5 ] );
jak widac powyzej ow "slot" nalezy do tablicy, objSlot[5][5] wyswietla sie na ekranie jako odpowiedni obiekt, ale bez id, nie zabiera miejsca na mapie gry, a tekstury sa w nieodpowiednim miejscu wiec wydaje mi sie ze cos jest nie tak w tej funkcji. Pozdrawiam i z gory dziekuje za pomoc. Zapomnialem zadac najwazniejsze pytanie... czy argumenty funkcji moge zadeklarowac jako obiekty klas? Czy w przypadku kiedy argument ma przyjmowac dane od obiektu ktory jest czescia tablicy nie powinienem przypadkiem w jakis sposob uzyc wskaznikow? |
|
Mr.J Temat założony przez niniejszego użytkownika |
» 2013-07-05 10:42:09 Poradzilem sobie, ...za dlugo juz nad tym siedze i popelniam bardzo glupie bledy. Dlatego sam sobie odpowiadam, mozna w ten sposob deklarowac typy argumentow. Kod powinien wygladac tak: void set_OBJ( object obj1, int i, int j ) { objSlot[ i ][ j ].set_occupied( true ); objSlot[ i ][ j ].set_ID( obj1.get_ID() ); objSlot[ i ][ j ].set_walls( obj1.get_walls() ); objSlot[ i ][ j ].set_texture_box( obj1.get_texture_box().x, obj1.get_texture_box().y, obj1.get_texture_box().w, obj1.get_texture_box().h ); }
|
|
« 1 » |