Мне нужно написать программу C для прокатки костей с использованием класса Dice. Основное требование заключается в том, что мне нужно использовать эту магистраль, его редактирование:Класс Rolling Dice program
int main()
{
Dice* ptrDice;
???
for (int i = 0; i < 5; i++)
{
???? // roll the 5 dice
???? // print the outcome
}
}
Я просто не могу, как использовать указатели здесь. Может ли кто-нибудь помочь, PLS ?!
Вот мой код, но он не работает :(
#include <iostream>
#include <iomanip>
#include <cstdlib>
using namespace std;
class Dice{
public:
Dice();
int getNums();
void Roll();
private:
int nNums;
};
Dice::Dice(){
nNums=5;
}
int Dice::getNums()
{
return nNums;
}
void Dice::Roll()
{
nNums = rand()%6 + 1;
}
int main()
{
Dice* ptrDice = new Dice;
ptrDice -> getNums();
for (int i = 0; i < 5; i++)
{
getNums[i] = rand()%6 + 1; // roll the 5 dice
cout << "You rolled: ";
cout << ptrDice->getNums() << setw(4);
cout << endl; // print the outcome
}
}
Моя главная беда в том, чтобы использовать это ptrDice и печать в основной функции, я думаю!
Почему бы не прочитать лекционные заметки? –
Помимо отличной генерации случайных чисел, я думаю, что у вас есть вся реализация. Но вы неправильно вызываете необходимые функции-члены. Например, подумайте, почему существует 'Dice :: Roll()'? – Mahesh
Вам необходимо написать * C++ * программу. Эти два варианта не совпадают. – Sinkingpoint