0 / 0 / 0
Регистрация: 23.05.2016
Сообщений: 22
|
|
1 | |
Реализация вектора ссылок12.11.2016, 21:50. Показов 1719. Ответов 9
Доброго времени суток, дорогие форумчане! Проблема в следующем: мне дано было задание сделать игру Го(кто не знает это что-то вроде китайских шахмат-шашек) в консоли с возможностью играть с компьютером(задача не из легких как по мне)! Я не хочу заводить Вас в тупик своими безумными идеями, а поделюсь лишь их частью... Словом у меня есть класс element, который представляет собой набор данных где есть 4 ссылки на соседние элементы(right, left, top, down), значение(value), координаты на доске 19х19(x, y), дыхания(breathes - соседние места где ничего не стоит). Так вот сейчас я хочу создать класс group, означающий группу фишек 1 - го цвета. Этот класс мне нужен для того, чтобы в игре я мог рассматривать не только каждую фишку по-одной, но и группами! У каждой такой группы должен быть вектор со ссылками на каждую фишку текущего цвета, вектор со свободными дыханиями(напоминаю - соседними местами где на данном этапе игры ничего не стоит), причем дыханиями всех фишек в этой группе исключая те, которые заняты своими фишками(надеюсь не запутал))))! И вот наконец мы подошли к самому вопросу: как мне реализовать добавление ссылок в "вектор дыханий"(FreeBreathes)?
Эта загвоздка находится в switch-е ниже! class group { public: unint ID; vector<element>Graph; vector<element>*FreeBreathes; void addForGraph(element iElement) { unint i = 0; Graph.push_back(iElement); for (i = 0; i < 4; i++) { if (iElement.value = ' ') { switch (i) { case 1: *FreeBreathes.push_back(iElement.right); case 2: *FreeBreathes.push_back(iElement.top); case 3: *FreeBreathes.push_back(iElement.left); case 4: *FreeBreathes.push_back(iElement.down); } } } } group() { ID = counterGraphs; counterGraphs++; } }; Если есть непонятности жду вопросов! Но хотелось бы узнать по-скорее хоть какое-то мнение)))
0
|
12.11.2016, 21:50 | |
Ответы с готовыми решениями:
9
Реализация программы с использованием ссылок и указателей Реализация интеллектуального указателя подсчета ссылок Реализация вектора Реализация вектора |
7793 / 6560 / 2984
Регистрация: 14.04.2014
Сообщений: 28,672
|
|
12.11.2016, 21:54 | 2 |
Указатели используй.
0
|
Комп_Оратор)
|
|
12.11.2016, 22:24 | 4 |
metrovlad2033, вот это вот не вектор:
это указатель на вектор. Вы уверены, что именно это Вам нужно? Если да, - расскажите. А чтобы понять фразу: Нужно: 1.Увидеть определение класса iElement. Особенно того места где определяются rght, left и т.п. 2.Понять что означает слово "загвоздка". То есть, что пишет компилятор, если пишет... И ещё. Попробуйте в следующий раз выделить код и тиснуть на кнопочку C++. Она в левом верхнем углу редактора сообщений.
1
|
0 / 0 / 0
Регистрация: 23.05.2016
Сообщений: 22
|
||||||
13.11.2016, 00:13 [ТС] | 6 | |||||
Вот определение класса element:
0
|
0 / 0 / 0
Регистрация: 23.05.2016
Сообщений: 22
|
|
13.11.2016, 00:15 [ТС] | 7 |
Да и скорее всего я не правильно выразился: мне нужен вектор УКАЗАТЕЛЕЙ! Прошу прощения за неточность(((
0
|
13.11.2016, 00:19 | 8 | |||||
Сообщение было отмечено metrovlad2033 как решение
Решение
metrovlad2033, тему целиком не читал (лень вникать, да и букв многа), поэтому что первое вижу, на то и отвечаю
это делается примерно так
1
|
Комп_Оратор)
|
||||||
13.11.2016, 00:37 | 9 | |||||
Сообщение было отмечено metrovlad2033 как решение
Решение
тогда не объявляйте указатель на вектор. Объявляйте вектор указателей:
1
|
0 / 0 / 0
Регистрация: 23.05.2016
Сообщений: 22
|
|
13.11.2016, 19:47 [ТС] | 10 |
СПАСИБО ВАМ ВСЕМ, ДАЙ БОГ ВАМ ЗДОРОВЬЯ))) ВСЕ ЗАРАБОТАЛО ТОЛЬКО БЛАГОДАРЯ ВАМ!
0
|
13.11.2016, 19:47 | |
13.11.2016, 19:47 | |
Помогаю со студенческими работами здесь
10
Реализация вектора Реализация вектора из структуры Реализация собственного класса вектора Реализация двусвязного списка на базе вектора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |