Форум программистов, компьютерный форум CyberForum.ru

Как передать в функцию двумерный массив указателей на класс? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
griseus
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 3
14.09.2010, 22:03     Как передать в функцию двумерный массив указателей на класс? #1
у меня есть
C++
1
2
3
std::vector<Monster*> monsters;          
Rect *pole[20][20];                
int pacmen_distance[20][20];
Monster и Rect два класса.

я хочу передать их в функцию и там изменять ... я так понимаю что надо передавать на них ссылку .... но не понимаю как
мне в функции надо
выделить память под
C++
1
pole[i][j]= new Rect(x,y,hge->Texture_Load("game_tex.png"),2);
и под
monsters.push_back(new Monster(9,9));
и потом изменять
C++
1
pole[11][5]->set_tex(1);
и
C++
1
pacmen_distance[11][5]=-1;
Подскажите как мне передать на эти три структуры ссылку в ф-ю, что бы я мог их потом редактировать???
Заранее благодарен.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1590 / 982 / 115
Регистрация: 27.09.2009
Сообщений: 1,897
Завершенные тесты: 1
15.09.2010, 15:02     Как передать в функцию двумерный массив указателей на класс? #2
C++
1
void Foo(std::vector<Monster*> &monsters, Rect* pole[][20], int distances[][20]);
Mr.X
Эксперт С++
 Аватар для Mr.X
2803 / 1579 / 247
Регистрация: 03.05.2010
Сообщений: 3,667
15.09.2010, 19:11     Как передать в функцию двумерный массив указателей на класс? #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <vector>
 
class Monster;
typedef  std::vector<Monster*>  T_p_monsters;
T_p_monsters  p_monsters;
 
class Rect;
typedef Rect*  T_pole[20][20];
T_pole  pole;
 
typedef int T_pacmen_distance[20][20];
T_pacmen_distance  pacmen_distance;
///////////////////////////////////////////////////////////////////////////////
void Foo
    (
        T_p_monsters&       p_monsters,
        T_pole&             pole,
        T_pacmen_distance&  pacmen_distance
    );
///////////////////////////////////////////////////////////////////////////////
int main()
{
    return 0;
}
griseus
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 3
15.09.2010, 22:42  [ТС]     Как передать в функцию двумерный массив указателей на класс? #4
спасибо !!!!
Yandex
Объявления
15.09.2010, 22:42     Как передать в функцию двумерный массив указателей на класс?
Ответ Создать тему
Опции темы

Текущее время: 16:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru