to, co chcę zarchiwizować, to prosty sposób, aby niektóre zmienne były trwałe. W tym celu napisałem klasę PeristenceProvider, która opakowuje funkcję drzewa właściwości boost do przechowywania danych w plikach xml/ini.c + + utrzymywanie danych
W tej chwili muszę robić rzeczy tak:
ClassA::ClassA()
{
m_valueI = PersistenceProvider::getInstance.get<int>("valueI");
}
ClassA::~ClassA()
{
PeristenceProvider::getInstance.set<int>("valueI", m_valueI);
}
ale czy istnieje szansa, aby ukryć to w taki sposób, jak to:
class ClassA
{
Persist<int, "valueI"> m_ValueI;
}
myślę, że można zbliżyć się z szablonów, ale trzeba makro magia, aby tak dokładnie było. – Stormenet
Jeśli potrzebujesz generować identyfikatory ciągów znaków z nazw zmiennych, będziesz potrzebował makr. –
Czy możesz przekazać literał ciągu jako parametr szablonu? – tmpearce