сывается мастью и значением, а также признаком того, расположена ли она в колоде или находится на игровом поле.
Сама колода (класс TPack) будет содержать массив из нужного числа карт (например, 52), иметь конструктор, который проинициализирует массив карт начальными значениями, и методы тасования колоды, взятия карты из колоды (первую сверху или по индексу), возврата ее обратно в колоду и проверки, имеется ли в колоде хотя бы одна карта.
Создав соответствующие классы и их реализацию, в дальнейшем можно будет применять готовую «виртуальную» колоду для разработки любых карточных игр.
Класс «Карта»
Размещать определение классов «Карта» и «Колода» лучше всего в отдельном файле. Его потом можно будет без проблем включать в другие приложения, связанные с картами (командой Project -> Add To Project...).
Создается такой файл (новый модуль программы), командой File •» New... и выбором значка Unit (Модуль). Новый модуль надо сразу сохранить под именем CardUnit.cpp.
В заголовочном файле CardUnit.h этого модуля будет размещаться описание двух классов. Первым станет класс «Карта»:
class TCard
{
private:
int Suit; // масть
int Value; // 0- туз, 1- 2, 2- 3, ..., 10- валет, 11- дама, 12-король
public:
void Init(int suit, int value);
int GetSuitO;
int GetValue() ;
bool Is;
};
187