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

Фызов функции из класса - C++

Восстановить пароль Регистрация
 
SAUtrade
13 / 13 / 1
Регистрация: 21.10.2012
Сообщений: 140
12.01.2013, 00:03     Фызов функции из класса #1
Есть два класса один класс отвечает за создание колоды, ее перемешивания. А другой за создание игры..
Вопрос вот в чем как мне организовать вызов функции создания и тосовки колоды в классе игры??

Код
//TwentyOneGame.h

#include "Player.h"

class TwentyOneGame{
	Player dealer;
	Player gamer;
public:
	void startGames();
	void NewGames();
	void ShowPlayer(Player&);
	void Show();
	void addPlayerCard(Player&, Card_Batch);
	void CalculateScore(Player& gamer);
};
Код
//TwentyOneGame.cpp

#include <iostream>
#include "TwentyOneGame.h"
#include <stdlib.h>
using namespace std;

void TwentyOneGame::NewGames(){
	system("cls");
	dealer.Drop();
	gamer.Drop();
В этом месте должна вызваться функция создания колоды и ее перемешивание...
	
}


void TwentyOneGame::addPlayerCard(Player& gamer, Card_Batch cards){
	gamer.GetCardBatch().AddCard();
}
.
.
.


Код
//Card_Batch.cpp

#include <iostream>
#include "CardBatch.h"
#include <ctime>

using namespace std;

Card_Batch::Card_Batch(){
	const int size = 52;
	count = 0;
	cards = new Card[size];
}

//Эти две функции должны вызваться в TwentyOneGame
//Создание колоды карт
void Card_Batch::setCard_Batch(){
	for(int i = 0; i < 52; i++){
		int f = (i%13) + 2;
		Suit s = Suit(i/13);
		cards[i].setCard(f, s);
	}
}

//Тусуется колода карт
void Card_Batch::Shuffle(){
	srand (unsigned(time(NULL)));
	for(int i = 0; i < 52; i++){
		int k = rand()%52;		//выбираем случайную карту
		Card temp = cards[i];	//и меняем ее с текущей
		cards[i] = cards[k];
		cards[k] = temp;
	}

}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zvoronz
 Аватар для zvoronz
270 / 237 / 21
Регистрация: 29.05.2012
Сообщений: 889
12.01.2013, 00:07     Фызов функции из класса #2
Добавь в класс игры ссылку на объект колоды. Так же как сделал с Player и обращайся потом к любым методам класса.
Саня gamer
96 / 70 / 1
Регистрация: 18.05.2011
Сообщений: 343
Записей в блоге: 1
12.01.2013, 00:12     Фызов функции из класса #3
сделай как с класом Player
SAUtrade
13 / 13 / 1
Регистрация: 21.10.2012
Сообщений: 140
12.01.2013, 00:31  [ТС]     Фызов функции из класса #4
Цитата Сообщение от zvoronz Посмотреть сообщение
Добавь в класс игры ссылку на объект колоды. Так же как сделал с Player и обращайся потом к любым методам класса.
Card_Batch& Deck();

У меня такой вопрос или нужно какието параметры передавать...

Ошибку выбивает...
TwentyOneGame.obj : error LNK2019: unresolved external symbol "public: class Card_Batch & __thiscall TwentyOneGame:eck(void)" (?Deck@TwentyOneGame@@QAEAAVCard_Batch@@XZ) referenced in function "public: void __thiscall TwentyOneGame::NewGames(void)" (?NewGames@TwentyOneGame@@QAEXXZ)

Добавлено через 2 минуты
Все раазобрался)
Yandex
Объявления
12.01.2013, 00:31     Фызов функции из класса
Ответ Создать тему
Опции темы

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