J
John Doe
Hi,
I have a vector of struct called ViewList defined like this :
class CViewMgr : public CSingleton<CViewMgr>
{
friend class CSingleton<CViewMgr>;
// Constructor
CViewMgr(): m_pCurView(NULL) {}
CViewMgr(CViewMgr const&) {}
virtual ~CViewMgr(void) {}
protected:
CMobidjinnView m_MobidjinnView;
public:
struct ViewInfo
{
ViewInfo(const GString& view, const CViewBase* a_pViewBase)
: m_viewname(view), m_pView(a_pViewBase)
{
}
GString m_viewname;
const CViewBase* m_pView;
};
typedef std::vector<ViewInfo> ViewList;
void Init()
{
m_viewlist.push_back(ViewInfo(_T("SelectModuleView"), &m_MobidjinnView));
}
CViewBase* SwitchView(const GString& strViewName)
{
// I want to search in the ViewList an element
// with a m_viewname matching strViewName
CViewBase* pView = ?????????????????????????;
pView = find_if( m_viewlist.begin(), m_viewlist.end(),
... ) );
return NULL;
}
protected:
ViewList m_viewlist;
CViewBase* m_pCurView;
};
static inline CViewMgr& ViewMgr() { return *(CViewMgr::GetInstance()); }
and I would like to search my vector for a particular value matching the
m_viewname value.
How should I declare my functor ?
I have a vector of struct called ViewList defined like this :
class CViewMgr : public CSingleton<CViewMgr>
{
friend class CSingleton<CViewMgr>;
// Constructor
CViewMgr(): m_pCurView(NULL) {}
CViewMgr(CViewMgr const&) {}
virtual ~CViewMgr(void) {}
protected:
CMobidjinnView m_MobidjinnView;
public:
struct ViewInfo
{
ViewInfo(const GString& view, const CViewBase* a_pViewBase)
: m_viewname(view), m_pView(a_pViewBase)
{
}
GString m_viewname;
const CViewBase* m_pView;
};
typedef std::vector<ViewInfo> ViewList;
void Init()
{
m_viewlist.push_back(ViewInfo(_T("SelectModuleView"), &m_MobidjinnView));
}
CViewBase* SwitchView(const GString& strViewName)
{
// I want to search in the ViewList an element
// with a m_viewname matching strViewName
CViewBase* pView = ?????????????????????????;
pView = find_if( m_viewlist.begin(), m_viewlist.end(),
... ) );
return NULL;
}
protected:
ViewList m_viewlist;
CViewBase* m_pCurView;
};
static inline CViewMgr& ViewMgr() { return *(CViewMgr::GetInstance()); }
and I would like to search my vector for a particular value matching the
m_viewname value.
How should I declare my functor ?