All pastes #739249 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-10-16 23:55 UTC
rendered paste body
typedef void (* pFunction)(std::string sData);

class someclass
{
	private:
		std::map<std::string, pFunction> m_mFuncs;
		std::string m_sCurrent;
	
	public:
		someclass(std::string sName, pFunction p);
		
		void SetCurrent(std::string sCurrent);
		
		void Return();
}; // someclass

someclass::someclass(std::string sName, pFunction p)
{
	m_mFuncs[sName] = p;
	m_sCurrent = sName;
}

void someclass::SetCurrent(std::string sCurrent)
{
	m_sCurrent = sCurrent;
}

void someclass::Return()
{
	pFunction p = m_mFuncs[sCurrent]
	
	return (*p("Some data"));
}