Witam.
Dlaczego dla poniższego kodu otrzymuję poniższe błędy?
Table_Head_Logic.h
#include <array>
#include "Data.h"
class Table_Head_Logic
{
struct Sorted_Colors_Selected
{
Color_Selected Color;
size_t ID;
static bool Compare(Sorted_Colors_Selected Value_01, Sorted_Colors_Selected Value_02)
{
return Value_01.Color.Colors.size() > Value_02.Color.Colors.size();
}
void Set(Color_Selected Color, size_t ID)
{
this->Color = Color;
this->ID = ID;
}
};
template <size_t Size> std::array<Sorted_Colors_Selected, Size> Sort_By_Size(std::array<Color_Selected, Size> &Array);
}
Table_Head_Logic.cpp
#include "Table_Head_Logic.h"
template <size_t Size> std::array<Sorted_Colors_Selected, Size> Table_Head_Logic::Sort_By_Size(std::array<Color_Selected, Size> &Array)
{
std::array<Sorted_Colors_Selected, Size> Sorted;
for (size_t TB_01 = 0; TB_01 < Size; ++TB_01) Sorted[TB_01].Set(Array[TB_01], TB_01);
std::sort(Sorted.begin(), Sorted.end(), Sorted_Colors_Selected::Compare);
return Sorted;
}
Błąd 1 error C2065: "Sorted_Colors_Selected" : niezadeklarowany identyfikator
Błąd 2 error C2923: "std::array" : "Sorted_Colors_Selected" nie jest prawidłowy argument typu szablon dla parametru "_Ty"
Błąd 3 error C2244: "Table_Head_Logic::Sort_By_Size" : nie można dopasować definicji funkcji do istniejącej deklaracji