программисты-программисты! Я ищу, чтобы войти в разработку игры, поэтому я пытаюсь написать свой собственный, очень простой текстовый боевой симулятор. Вы можете выбрать имя игрока и сразиться с монстрами по вашему выбору. Во всяком случае, я собираюсь сначала написать простой код, а затем расширить и добавить еще несколько классов. Вот два моих только файлы на данный момент:Ошибка: неопределенная ссылка на 'player()'
player.h
#ifndef PLAYER_H
#define PLAYER_H
#include <string>
using std::string;
class player
{
public:
player();
const int maxHealth = 100;
int armorModifier = 0;
int playerLevel = 1;
int gold = 0;
int currentHealth = maxHealth;
string Name;
~player();
};
#endif // PLAYER_H
BattlesMain.cpp
/* GAME FEATURES THAT ARE COMMENTED WILL BE IMPLEMENTED AT A LATER TIME */
#include <iostream>
#include "player.h"
using std::cout;
using std::cin;
int main()
{
/* MAIN MENU */
cout << "Monster Battles: Text Action, v0.1\n";
cout << "Welcome, fighter!\n";
cout << "1.New Game\n";
// cout << "2.Load Game\n";
cout << "3.Quit Game\n";
char choice;
cin >> choice;
/* GAME LOOP */
while (choice !='4')
{
if (choice == '1')
{
player Player1;
cout << "Arena Host: Hello, fighter. What is your name?\n";
cin >> Player1.Name;
cout << "Welcome to the arena, " << Player1.Name << ". Here, you will \n";
cout << "be given the chance to battle fearsome monsters for fortune and \n";
cout << "fame. With the gold you win, you can visit our shop to buy new weapons, \n";
cout << "armor and other useful items. Since you are unarmed, here's a THIEF'S DAGGER. \n";
cout << "It's not much, but you'll hopefully be able to buy better items later! Good luck!\n";
}
return 0;}
Обратите внимание, что это моя первая попытка создать даже небольшой проект , так что несите меня за любой плохой стиль кодирования (обратная связь более чем приветствуется). Это урезанная версия того, что я хочу сделать, как я также заявляю в комментариях. Дело в том, что когда я пытаюсь выполнить файл, везде, где я использую Player1.Name, я получаю сообщение об ошибке «Ошибка: неопределенная ссылка на« player() ». В настоящее время я использую Code :: Blocks для Windows 7.
Спасибо!
и присвоение значений переменным-членам в объявлении класса также не допускается – WoJo
@WoJo: Это, на C++ 11 –
ОК, не знал, что :) – WoJo