transformhelper.h
来自「The article describes a smart binding of」· C头文件 代码 · 共 50 行
H
50 行
#ifndef __Transform_Helper_H
#define __Transform_Helper_H
#include "Transformation.h"
#include "Destroyer.h"
#include <string>
#include <vector>
using namespace std;
#ifndef null
#define null 0
#endif
class ITransform;
class TransformHelper
{
// Methods
public:
static TransformHelper* Instance()
{
// Uses "Lazy initialization"
if (!instance_)
{
instance_ = new TransformHelper();
destroyer_.SetObject(instance_);
}
return instance_;
}
int ObjectsNumber () { return static_cast<int>(transformObjects_.size()); }
void Add (ITransform* transform);
void Remove (ITransform* transform);
ITransform* Get (int index);
ITransform* Get (const string& name);
bool Exist (const string& name);
// Constructor
protected:
TransformHelper () {}
private:
static TransformHelper* instance_;
static Destroyer<TransformHelper> destroyer_;
vector<ITransform*> transformObjects_;
};
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?