А далее, вместо заключительной точки с запятой, которая в файле Game.h завершала описание метода, приводятся фигурные скобки — знакомый нам логический блок, в котором размещаются операторы, определяющие логику работы данного метода.

int TDice::GetDiceValue()

{

}

h01301.jpg

Любая программа на Си++ строится подобным способом. Программист определяет нужные ему классы, а потом задает логику работы методов этих классов. Если посмотреть на код, автоматически сгенерированный C++Builder, то там везде будут встречаться методы различных классов — их можно сразу заметить по характерным парам двоеточий ::

Все реакции на события, которые определялись при создании калькулятора (например, щелчок на кнопке), были автоматически создаваемыми методами главного окна.

Имитируем бросание кубика

В C++Builder есть удобная стандартная функция random(), которая в качестве параметра получает целое число п, а возвращает тоже целое число из диапазона от 0 до п-1. Тогда бросание кубика с шестью гранями будет имитироваться выражением random ( 6 ) +1. Только для использования функции random() в файл Game.cpp надо включить заголовочный файл stdlib.h:

ftinclude <stdlib.h>

— А как внутри метода GetDiceValueQ записать, что данное выражение будет возвращаться в качестве его значения?

— В этом поможет оператор return. Синтаксис его таков:

return возвращаемое_значение;

Как только этот оператор встречается по ходу выполнения некоторого метода, дальнейшая работа метода немедленно прерывается, и возвращается значение, указанное в качестве параметра return.

h01302.jpg

Не имеет смысла размещать операторы сразу после оператора return, так как они никогда не будут выполнены. Например, если написать

return 10; . "

х= 5;

130