#include <iostream>
using namespace std;
class PhysicsModule {
int AAA;
private:
PhysicsModule() {};
PhysicsModule(PhysicsModule const&) {};
void operator=(PhysicsModule const&) {};
public:
static PhysicsModule* getInstance(){
static PhysicsModule instance;
return &instance;
}
bool Initialize() {AAA = 12;}
const int GetAAA() { return AAA; }
};
int main() {
PhysicsModule::getInstance()->Initialize();
PhysicsModule* pm = PhysicsModule::getInstance();
std::cout << "AAA is " << pm->GetAAA();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgUGh5c2ljc01vZHVsZSB7CglpbnQgQUFBOwoKcHJpdmF0ZToKCVBoeXNpY3NNb2R1bGUoKSB7fTsKCVBoeXNpY3NNb2R1bGUoUGh5c2ljc01vZHVsZSBjb25zdCYpIHt9OwoJdm9pZCBvcGVyYXRvcj0oUGh5c2ljc01vZHVsZSBjb25zdCYpIHt9OwoJCnB1YmxpYzoKCXN0YXRpYyBQaHlzaWNzTW9kdWxlKiBnZXRJbnN0YW5jZSgpewoJCXN0YXRpYyBQaHlzaWNzTW9kdWxlIGluc3RhbmNlOwoJCXJldHVybiAmaW5zdGFuY2U7Cgl9CgoJYm9vbCBJbml0aWFsaXplKCkge0FBQSA9IDEyO30KCWNvbnN0IGludCBHZXRBQUEoKSB7IHJldHVybiBBQUE7IH0KfTsKCmludCBtYWluKCkgewoJUGh5c2ljc01vZHVsZTo6Z2V0SW5zdGFuY2UoKS0+SW5pdGlhbGl6ZSgpOwoJUGh5c2ljc01vZHVsZSogcG0gPSBQaHlzaWNzTW9kdWxlOjpnZXRJbnN0YW5jZSgpOwoJCglzdGQ6OmNvdXQgPDwgIkFBQSBpcyAiIDw8IHBtLT5HZXRBQUEoKTsKCQoJcmV0dXJuIDA7Cn0=