析构函数设为私有,只能new和delete
private :
~A(){}
重载符号为私有
private :
void * operator new ( size_t t){} // 注意函数的第一个参数和返回值都是固定的
void operator delete ( void * ptr){} // 重载了new就需要重载delete
参考:https://www.cnblogs.com/vincently/p/4838283.html
定义在宏中才能编译通过
函数模板
template<typename T>
typename std::enable_if < std::is_same<glm::dvec3, T>::value || std::is_same<glm::dvec2, T>::value, void >::type
类模板
static_assert( sizeof(int) == sizeof(T) || sizeof(float) == sizeof(T),"T type is not the specified DataType including int and float");