Does anyone know why the following works:
But not the following:Code:class Test { public: void Set(int) {} int Get() {} Test(): m_Test(this) {}; Stuff::CUtilityMember<int, Test, int, &Test::Get, &Test::Set> m_Test; };
?Code:class Test { public: void Set(int) {} int Get() {} Test(): m_Test(this) {}; Stuff::CUtilityMember<int, Test, int, NULL, NULL> m_Test; };
CUtilityMember looks like:
Error 3 error C2975: 'GetFunction' : invalid template argument for 'Stuff::CUtilityMember', expected compile-time constant expression g:\w00t\visual studio 2008\projects\stuff\utilitymember.h 65Code:#define Template template \ < \ typename Type, typename Class, typename ReturnType, \ /*typename*/ /*ParamPolicy<ReturnType>::Type*/int (Class::* GetFunction)(), \ void (Class::* SetFunction)(/*typename ParamPolicy<Type>::Type*/int NewData) \ >
Error 4 error C2975: 'SetFunction' : invalid template argument for 'Stuff::CUtilityMember', expected compile-time constant expression g:\w00t\visual studio 2008\projects\stuff\utilitymember.h 65



LinkBack URL
About LinkBacks



