#pragma once #include template > class CFunctionList { public: std::vector > funcs; CFunctionList(int){}; CFunctionList(){}; CFunctionList(const boost::function &first) { funcs.push_back(first); } CFunctionList & operator+=(const boost::function &first) { funcs.push_back(first); return *this; } const boost::function & operator=(const boost::function &first) { funcs.push_back(first); return first; } operator bool() const { return funcs.size(); } void operator()() const { std::vector > funcs2 = funcs; //backup for(int i=0;i