static const map<const Type*, int>* priority;
ここで、Typeは私自身の特別なクラスです。
初期化(なぜc ++がこれを要求したのか私にはわかりません、自動は機能しません)
const map<const Type*, int, less<const Type*>, allocator<pair<const Type* const, int>>>* ToolProperty::priority
= new map<const Type*, int, less<const Type*>, allocator<pair<const Type* const, int>>>();
そして最後に、それを使おうとしています(間違ったタイプを渡していると私に言っている場合)
static void setPriority(const Type* type, int newPriority)
{
(*priority)[type] = newPriority;
}