[ create a new paste ] login | about

Link: http://codepad.org/L4uxayXT    [ raw code | output | fork ]

C++, pasted on Oct 12:
template<class T>
class QSignalBlockerCallProxy
{
    T * const o;
public:
    explicit QSignalBlockerCallProxy( T * oo )
      : o(oo)
    {
    }
    T* operator->()
    {
         return o;
    }
    ~QSignalBlockerCallProxy()
    {
        if(o)
            o->blockSignals(false);
    }
};

template<class T>
class QSignalBlocker
{
    T * const o;
public:
    explicit QSignalBlocker( T * oo )
      : o(oo)
    {
    }
    QSignalBlockerCallProxy<T> operator->()
    {
         if (o)
             o->blockSignals( true );
         return QSignalBlockerCallProxy<T>(o);
    }
    ~QSignalBlocker() {}
};

template<class T>
QSignalBlocker<T> SilentCall(T* o)
{
    return QSignalBlocker<T>(o);
}


Output:
1
2
In function `_start':
undefined reference to `main'


Create a new paste based on this one


Comments: