Синглтон

Синглтон

В ООП синглтон (Singleton pattern) — это объект, существующий в единственном экземпляре во все время выполнения программы. Обычно синглтонами делаются различные сервисные объекты, управляющие некоторым глобальным в контексте программы процессом. В GEANT4 многие объекты-менеджеры являются синглтонами.

Конструкторы у классов-синглтонов обычно закрыты, объект автоматически создается во время запуска программы, а доступ к нему производится через статическую функцию член, например, как у G4RunManager:

// Определение (в GEANT4)
class G4RunManager
{
public:
  static G4RunManager* GetRunManager();
};

// Использование (в коде)
G4RunManager::GetRunManager->BeamOn(1000); // Запустить 1000 событий



Объекты-менеджеры:

Edit page