У меня есть класс A, включенный в B, включенную в C.Как зарегистрироваться? MFC
В классе A У меня есть функция ExamItemStates. и я могу получить доступ к нему из класса B: Функция ExamItemStates объявлен как Public:
BOOL ExamItemStates(int nItem, DWORD dwStates) const;
Заголовок класса B:
class B : public CDialogEx
{
DECLARE_DYNAMIC(B)
public:
B(CWnd* pParent = NULL); // standard constructor
enum { IDD = IDD_B };
CReportCtrl m_wndList;
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual BOOL OnInitDialog();
DECLARE_MESSAGE_MAP()
};
//B.cpp
void B::DoDataExchange(CDataExchange* pDX)
{
DDX_Control(pDX, IDC_LIST1, m_wndList);
CDialogEx::DoDataExchange(pDX);
}
BOOL B::OnInitDialog()
{
CDialogEx::OnInitDialog();
if (m_wndList.ExamItemStates(2, RC_ITEM_CHECKED))
AfxMessageBox(L"Please write correct name!");
UpdateData(FALSE);
return TRUE;
}
Мне нужно получить доступ к нему из класса C. Как я могу это сделать ?
Ребята может кто-нибудь объяснить, вместо того, чтобы покинуть вниз голосования? – Klasik
Это очень простой C++. Ваша книга на C++ будет охватывать иерархии классов, модификаторы доступа и виртуальные члены. Подсказка: вы получаете доступ к членам 'B' от' C' так же, как вы получаете доступ к членам 'CDialogEx' 'из' B'. Вы уже реализовали последнее. Вы, по сути, спрашиваете: как решить проблему, которую я уже решил? Это может объяснить сокращение. – IInspectable