Как присвоить значения указателю на статическую переменную типа структуры находящейся в класса в c++?)
#ifndef PALETTE_HPP
#define PALETTE_HPP
#include "coreMinimal.hpp"
namespace kp
{
using stateColor_t = kp::Palette::StateColor;
class Palette
{
public:
struct StateColor
{
sf::Color shape;
sf::Color outline;
sf::Color text;
sf::Color marker;
};
static const kp::stateColor_t* m_active;
static const kp::stateColor_t* m_inactive;
};
}
#endif // !PALETTE_HPP
Ответы (1 шт):
Автор решения: kolyshek
→ Ссылка
Нашёл решение.
Palette.hpp:
#ifndef PALETTE_HPP
#define PALETTE_HPP
#include "coreMinimal.hpp"
namespace kp
{
struct StateColor
{
sf::Color shape;
sf::Color outline;
sf::Color superimposed;
sf::Color text;
sf::Color marker;
};
class Palette
{
public:
static const kp::StateColor* m_active;
static const kp::StateColor* m_inactive;
};
}
#endif // !PALETTE_HPP
Palette.cpp:
#include "Palette.hpp"
const kp::StateColor* kp::Palette::m_active = new kp::StateColor
{
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255)
};
const kp::StateColor* kp::Palette::m_inactive = new kp::StateColor
{
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255),
sf::Color(0, 0, 0, 255)
};