atesdal icon

Untitled

atesdal | PRO | 11/09/23 12:07:56 PM UTC | 0 ⭐ | 11038 👁️ | Never ⏰ | []
C++ |

420 B

|

None

|

0 👍

/

0 👎

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;
};

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎