Compare commits

..

No commits in common. "lesson_5" and "master" have entirely different histories.

4 changed files with 0 additions and 71 deletions

View File

@ -1 +0,0 @@
Паттерн "Одиночка" гарантирует, что класс имеет только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру.

View File

@ -1,32 +0,0 @@
/*
* Singleton.cpp
*
* Created on: 4 нояб. 2021 г.
* Author: alexander
*/
#include "Singleton.hpp"
Singleton *Singleton::_instance = nullptr;
Singleton::Singleton() {}
Singleton* Singleton::Instance()
{
if (_instance)
{
_instance = new Singleton;
}
return _instance;
}
std::string Singleton::getDiscription()
{
return "I'm a statically initialized Singleton!";
}
Singleton::~Singleton()
{
delete _instance;
}

View File

@ -1,22 +0,0 @@
/*
* Singleton.hpp
*
* Created on: 4 нояб. 2021 г.
* Author: alexander
*/
#pragma once
#include <string>
class Singleton
{
private:
static Singleton *_instance;
protected:
Singleton();
~Singleton();
public:
static Singleton* Instance();
std::string getDiscription();
};

View File

@ -1,16 +0,0 @@
/*
* main.cpp
*
* Created on: 4 нояб. 2021 г.
* Author: alexander
*/
#include "Singleton.hpp"
#include <iostream>
int main()
{
std::cout << Singleton::Instance()->getDiscription() << std::endl;
return 0;
}