[мой код довольно большой, поэтому я вставил только те части, которые показались мне подходящими, просто скажите, если вам нужно больше узнать об этом, спасибо]
Я определил константу в классе (Анимация) но теперь я разделил класс на две части (AnimationsDefinition & AnimationsInstance), я не могу использовать эту константу от одного класса к другому
Я включил AnimationsDefinition.h перед AnimationsInstance.h
common.h
#include "animationsDefinition.h"
#include "animationsInstance.h"
компилятор жалуется, что константа не может быть оценена
приведенный ниже код работал, но теперь я использую его в другом классе, он делаетбольше не работает
ошибка, которую я получаю:
error C2131: expression did not evaluate to a constant
note: failure was caused by non-constant arguments or reference to a non-constant symbol
note: see usage of 'EAST'
AnimationsDefinition.cpp
#include "common.h"
const int AnimationsDefinition::WEST = 0;
const int AnimationsDefinition::SOUTH = 1;
const int AnimationsDefinition::NORTH = 2;
const int AnimationsDefinition::EAST = 3;
...
AnimationsDefinition.h
#pragma once
class AnimationsDefinition
{
public:
static const int WEST;
static const int SOUTH;
static const int NORTH;
static const int EAST;
...
AnimationsInstance.cpp
#include "common.h"
void AnimationsInstance::update(float tpf)
{
switch (direction)
{
case AnimationsDefinition::EAST: <<<<<<<<< compilation error
{
...
Любая помощь приветствуется
С уважением