#pragma once #define VARIANTS float,int,std::string,bool enum class ATTRIBUTE_TYPE{ FLOAT, INT, STRING, BOOL, }; struct _ATTRIBUTE{ ATTRIBUTE_TYPE type; _ATTRIBUTE(ATTRIBUTE_TYPE type); private: static int internal_id; int id; public: bool operator<(const _ATTRIBUTE&rhs)const{ return int(id)