нет совпадения с оператором << в C ++ - PullRequest
0 голосов
/ 06 апреля 2020

Когда я запускаю этот код, я получаю следующую ошибку Снимок экрана:

50: 7: ошибка: нет соответствия для оператора << (типы операндов: std :: __ndk1 :: ostream '{aka' std :: __ ndk1 :: basic_ostream '} и' void ') cout << generateRandomNumber (); компиляция прекращена из-за ошибок -Wfatal. </p>

#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
// class game
class mathGames 
{
public:
mathGames();
void generateRandomNumber();
void calculate();
void show();
void answer();
private:
int x;
int y;
int z;
char ans;
};
// constructor 
mathGames::mathGames()
{
x = 0;
y = 0;
}
// generate random numbers 
void  mathGames::generateRandomNumber()
{
srand (time(NULL));
x = rand()%9+1;
y = rand()%9+1;
}
// calculate numbers 
void mathGames::calculate()
{
z = x + y;
}
// show generate number 
void mathGames::show()
{
cout << " " << x << " + " 
<< y << " = " << z << endl;
}
// user answer 
void mathGames::answer()
{
cout << " true or false (t/f) ? ";
cin >> ans;
if (ans == 't') 
cout << 
generateRandomNumber();
}
// main
int main ()
{
mathGames number;
number.generateRandomNumber();
number.calculate();
number.show();
number.answer();
}

1 Ответ

0 голосов
/ 30 апреля 2020

Ваша функция возвращает void. Поэтому вы не можете ничего напечатать.

...