Mam do zaimplementowania w C++ bufor cykliczny dla rekordów o stałej długości. Można przyjąć dowolną długość, dla ułatwienia np napis o długości 4 i liczbę typu int. O ile sama idea bufora cyklicznego i jego napisanie np dla samych intów nie sprawia mi problemu, to nie do końca wiem jak umożliwić buforowi używanie dwóch typów. Klasa, struktura? Chodzi też o to, żeby łatwo dało się napisać program testujący bufor.
0
0
Typy generyczne, tablica wskaźników na void.
0
może struktura danych taka jak krotka będzie dobra?: http://pl.wikipedia.org/wiki/Krotka_(struktura_danych)
0
Myślę i myślę, może opakować to w strukturę, zrobić tablicę struktur, a potem przy testowaniu z puli napisów i intów wrzucać losowo do struktury albo int albo string (druga wartość zostaje nieuzupełniona).
0
Unia?
0
struct Record
{
enum { rtString,rtInt,rtDouble } Type;
union
{
char SValue[8];
int IValue;
double DValue;
};
} Cycle[100];
0
Nie wiem czy dobrze rozumiem problem...ale możesz napisać coś w ten deseń:
template <typename T, typename U, unsigned N = 4>
struct TRecord {
union {
T FValue[N];
U SValue;
};
}
0
_13th_Dragon napisał(a):
struct Record
{
enum { rtString,rtInt,rtDouble } Type;
union
{
char SValue[8];
int IValue;
double DValue;
};
} Cycle[100];
Dzięki! To jest to czego szukałem. Jeszcze jedno pytanie, bo pierwszy raz widzę taki skrót, rozumiem że cycle[100] to już jest tablica struktur?