Witam!
Jestem początkującym w c++ i próbowałem stworzyć program, zawierający funkcje, przeliczająca, która z dwóch danych postaci wygra walkę. Póki co parametry postaci są z góry podane, ponieważ skupiłem się na podstawowym kodzie. Według kompilatora błąd występuje w 46 linijce, a jego treść to "error: no match for 'operator<<' (operand types are 'std::ostream {aka std::basic_ostream<char>}' and 'stworzenie')|". Chciałbym, aby ktoś mógł napisać mi, gdzie zrobiłem błąd :) Z góry dziękuję za odpowiedzi!
#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
class stworzenie {
public:
float hp;
float atk;
};
stworzenie walka (stworzenie jeden, stworzenie dwa)
{
while( (jeden.hp > 0) && (dwa.hp > 0) )
{
jeden.hp - dwa.atk;
dwa.hp - jeden.atk;
}
if (jeden.hp > 0)
{
return jeden;
}
else
{
return dwa;
}
}
char rozpoczacwalke;
int main()
{
stworzenie gracz, potwor;
gracz.hp = 100.0;
gracz.atk = 10.0;
potwor.hp = 50;
potwor.atk = 15;
cout << "Rozpoczac walke?";
rozpoczacwalke = getch();
if (rozpoczacwalke == '1')
{
cout << walka (gracz, potwor);
}
else
{
cout << "Zamykanie programu";
}
return 0;
}