# Pragma once
Class config
{
PRIVATE:
Static config * con;
Config (void );
Config (const config & con); // copy the constructor to private
Public:
Float CPU;
Float memory;
Float harddisk;
~ Config (void );
// Note that the Declaration is static.
Static config * getinstance ();
Void creatinstance ();
// Factory mode statement
Static config * Create ();
};
-----------------------------------------------------------------------------
Config: config (void)
{
}
Config ::~ Config (void)
{
}
// In Singleton mode, the return type is a class pointer, so that both the constructor method and the copy constructor method are private and only one class object can be created.
Config * config: con = nullptr;
Config * config: getinstance (){
If (con = nullptr)
{
Con = new config ();
Con-> CPU = 3;
Con-> memory = 4;
Con-> maid = 512;
}
Return con;
}
Void creatinstance (){
}
// Create factory Mode
Config * config: Create (){
Config * CO = new config ();
Return Co;
Call the main function singleton: config * CP = config: getinstance ();
}