Rezervační systém
Veřejné metody | Chráněné metody | Seznam všech členů
Dokumentace třídy CAutoIncrement

počítadlo ...

#include <UtilClass.h>

Diagram dědičnosti pro třídu CAutoIncrement
CBuses CCities CMemoryDb CPlans

Veřejné metody

 CAutoIncrement (unsigned uiStart=0)
 konstruktor ...
 
 ~CAutoIncrement ()
 destruktor ...
 
unsigned Next (void)
 hodnota počítadla ...
 

Chráněné metody

void Set (unsigned uiValue)
 nastavení ...
 

Detailní popis

počítadlo

Třída zajišťuje produkování vzrůstající řady čísel typu unsigned. Je zajištěna bezpečnost při vícevláknovém použití. Rozsah je dán použitým datovým typem. Zdá se, že pro účely jedinečného číslování zpráv při přenosu, transakcí, klientů apod. je současný rozsah více než dostatečný. V případě potřeby je možné velikost typu přímočaře zvětšit.

Třída deklaruje (ale neimplementuje!) privátní kopírovací konstruktor a operátor přiřazení. Tím brání veřejnému vytváření dalších instancí, čímž by byla narušena podmínka jedinečného číslování.

Dokumentace konstruktoru a destruktoru

CAutoIncrement::CAutoIncrement ( unsigned  uiStart = 0)

konstruktor

Inicializace čítače pro vícevláknové použití (kritická sekce).

Parametry
[in]uiStartpočáteční hodnota počítadla (přednastavená hodnota 0 znamená, že první vyprodukovaná hodnota pomocí Next bude 1)
CAutoIncrement::~CAutoIncrement ( )

destruktor

Uvolnění kritické sekce.

Dokumentace k metodám

unsigned CAutoIncrement::Next ( void  )

hodnota počítadla

Postupným voláním této metody získáváme vzestupnou hodnotu čísel (každým vykonáním se hodnota vnitřního počítadla zvětšuje). Dokud nedojde k přetečení čítače, je hodnota jedinečná.

Návratová hodnota
Současná hodnota počítadla
void CAutoIncrement::Set ( unsigned  uiValue)
protected

nastavení

Nastavení hodnoty počítadla by se mělo provádět pouze výjimečně, např. pokud zděděná třída tak nemůže provést již v konstruktoru. Operaci lze provést pouze směrem k větším hodnotám.

Parametry
[in]uiValuenová hodnota počítadla

Dokumentace pro tuto třídu byla generována z následujícího souboru: