#visual-c
Вопрос:
Пример:
protected:
// Protected Virtual Overrides
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
DECLARE_MESSAGE_MAP()
public:
// Public Virtual Overrides
virtual BOOL OnInitDialog();
// Message handlers
afx_msg void OnBnClickedOk();
afx_msg void OnBnClickedCheckUpdateCalendar();
afx_msg void OnCheckChangeListWeeks();
afx_msg void OnBnClickedRadioSyncAllWeeks();
afx_msg void OnBnClickedRadioSyncSingleWeek();
Почему система MFC последовательно размещает обработчики событий в этой public
области вместо этого? Я спрашиваю, потому что в свое время мы бы увидели такой код:
//{{AFX_VIRTUAL(CTitleTip)
public:
virtual BOOL PreTranslateMessage(MSG* pMsg) override;
virtual BOOL DestroyWindow() override;
//}}AFX_VIRTUAL
Или:
protected:
//{{AFX_MSG(CTitleTip)
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
Два приведенных выше фрагмента находятся в одном файле. Я понимаю, что protected
это значит, чтобы производный класс все еще имел к нему доступ. Но зачем эта смесь?