Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- template<typename T, typename SetFunc, typename SetFuncParam>
- struct TempSetting
- {
- TempSetting(T* attr, SetFunc f, SetFuncParam init, SetFuncParam end)
- : m_attr(attr)
- , m_func(f)
- , m_init(init)
- , m_end(end)
- {
- ((*m_attr).*m_func)(m_init);
- }
- ~TempSetting()
- {
- ((*m_attr).*m_func)(m_end);
- }
- private:
- T* m_attr{ nullptr };
- SetFunc m_func;
- SetFuncParam m_init, m_end;
- };
Advertisement