- В репозитории лежат два файла main.cpp, один из них, видимо, в проекте не используется. Надо удалить.
- файл CyrilicOld.TTF переместить к остальным ресурсам
- на каждый файл hpp следует завести парный cpp, куда помещается код. Определения и объявления классов, а также объявления методов должны быть в hpp:
// struct declaration.
struct AnimationManager;
// struct definition.
struct AnimatedEntity
{
// method declaration.
void init(AnimationManager &am);
};
все определения методов должны быть в cpp:
void AnimatedEntity::init(AnimationManager &am)
{
// [...]
}
- Вместо ifdef-guards надо использовать pragma once, конструкция делает то же самое в одну строку. Разница в том. что ifdef-guards были исторически первым решением проблемы повторного включения заголовочных файлов, а затем во всех компиляторах добавили поддержку директивы
#pragma once. Под ifdef-guard имею ввиду следующее:
#ifndef __GAME_H__
#define __GAME_H__
// code protected from double inclusion
#endif
все определения методов должны быть в cpp:
#pragma once. Под ifdef-guard имею ввиду следующее: