Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Вынос класса в отдельный файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что значит "в поле шириной 10 символов"? http://www.cyberforum.ru/cpp-beginners/thread1508581.html
Объясните пожалуйста, что значит в поле с шириной в 10 символов? И почему у меня показывает число с 3 знаками после запятой? Полностью задание звучит так: Расчет 2,5 в степени 3 с использованием...
C++ Нужна переменная или функция которая показывает текущую нагрузку на интернет Нужна переменная или функция которая показывает текущую нагрузку на интернет(приём). Не подскажете библиотеку и функцию непосредственно?Или скажите как этого можно добиться вообще. Заранее спасибо.С... http://www.cyberforum.ru/cpp-beginners/thread1508558.html
Выборка из динамического массива C++
Приветствую. Есть следующий код функции, который должен выдавать адрес минимального элемента массива. Я не совсем понимаю, насколько корректно он работает, поэтому жду ответов от более опытных людей....
C++ Что делает этот код?
Не могли бы мне помочь int Score = std::atoi( Row ); кажется этот код показывает только числа. каким способом можно вывести тексты
C++ Найти максимальную площадь квадратной подматрицы, состоящей только из 1 http://www.cyberforum.ru/cpp-beginners/thread1508547.html
Дана матрица NxN, заполненная 0 и 1. Найти максимальную площадь квадратной подматрицы, состоящей из 1. Нашел в сети алгоритм решения, но чтобы совсем уж нагло не списывать, проверяю матрицу в один...
C++ Каков тип строковых литералов? Каков тип rvalue строки "Hello"? const char* const или const char* ? const char* some1 = "Hello"; подробнее

Показать сообщение отдельно
Голубь Вася
5 / 5 / 3
Регистрация: 02.08.2015
Сообщений: 62

Вынос класса в отдельный файл - C++

02.08.2015, 14:05. Просмотров 938. Ответов 5
Метки (Все метки)

Использую MS VS 2013 Ultimate
Учусь программировать, решил попробовать написать морской бой.
Решил создать класс игрока, в котором бы хранились поля, имена и т.д.
Спустя время класс немножко разросся, и решил я его вынести в отдельный файл, чего раньше никогда не делал и не знаю как толком это делать. Нагуглил, что в .h файле должны храниться прототипы функций, а в .cpp сами функции.
Итак, 3 вопроса:
1. А что делать с классами? Какой у класса "прототип"?
2. Какого хрена мои файлы не инклудятся?
3. Как по хорошему то разбивать код? А то в инете что то все замудренное, мне бы по проще языком рассказать

Проект создавал пустой, player.h лежит в "заголовочные файлы", main.cpp и player.cpp лежат в "файлы исходного кода", это если в обозревателе решений смотреть. Если открыть папку, то все 3 файла лежат в одной папке D:\CPP\Sea fight\Sea fight
P.S. содержание функций вроде не нужно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//main.cpp
#include <iostream>
#include <cstdlib> 
#include <player.h> //Ошибка    2   error C1083: Не удается открыть файл включение: player.h: No such file or directory d:\cpp\sea fight\sea fight\main.cpp 4
 
using namespace std;
 
Player setNames(int playerId) { //Получаем имена и пароли (если надо) игроков
//...
}
 
int main(int argc, char *argv[]) {
//...
}
C++
1
2
3
4
5
6
7
//player.h
#ifndef PLAYER_H
#define PLAYER_H
 
//Собственно, а что тут писать если я хочу вынести не функции, а класс?
 
#endif
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//player.cpp
#include <iostream>
#include <cstdlib> 
#include <player.h> //Ошибка    1   error C1083: Не удается открыть файл включение: player.h: No such file or directory d:\cpp\sea fight\sea fight\player.cpp   3
 
class Player {
    char name[20];
    char pass[20];
    char field[10][10];
    char enemy_field[10][10];
public:
    Player(int i);
    void setName(char *_name);
    void setPass(char *_pass);
    void getEnemyField(Player enemy);
};
 
Player::Player(int i) {
//...
}
 
void Player::setName(char *_name) {
//...
}
 
void Player::setPass(char *_pass) {
//...
}
 
void Player::getEnemyField(Player enemy) {
//...
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru