Вопрос о BEGIN_MSG_MAP и С++
От: machine1 Россия  
Дата: 15.08.04 08:31
Оценка:
Привет!


Изучаю WTL. Столкнулся с не пониманием следующей вещи:


#define BEGIN_MSG_MAP(theClass) \
public: \
    BOOL ProcessWindowMessage(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& lResult, DWORD dwMsgMapID = 0) \
    { \
        BOOL bHandled = TRUE; \
        (hWnd); \                    // это зачем нужно??
        (uMsg); \                    // 
        (wParam); \                  //
        (lParam); \                  //
        (lResult); \                 //
        (bHandled); \                //
        switch(dwMsgMapID) \         //
        { \
        case 0:

//............................


Еще вопрос:

смотря примеры к статье http://www.rsdn.ru/article/winshell/themes.xml
Автор(ы): Акжан Абдулин
Дата: 04.12.2001



class CXpThemeSupport {

    static int m_RefCount;
    static HINSTANCE m_hLib;

public:
    static bool m_ThemeSupport;

    #define Func_Operator(Name) static UxTheme::Name* Name; // судя по всему это указатель на функцию.
                                                                       // Но почему он объявляется именно так?
                                                                       // я думал что указатели объявляются так: int (*f)()
    THEME_FUNCTIONS 
    #undef Func_Operator

    static void InitThemeSupport();
    static void ShutdownThemeSupport();

    CXpThemeSupport()
    {
        InitThemeSupport();
    }

    ~CXpThemeSupport()
    {
        ShutdownThemeSupport();
    }
};


з.ы. есть on-line ресурсы по ATL/WTL где учебники с 0 есть?
:: machine1
Re: Вопрос о BEGIN_MSG_MAP и С++
От: ccn  
Дата: 15.08.04 08:58
Оценка: +1
M>#define BEGIN_MSG_MAP(theClass) \
M>public: \
M> BOOL ProcessWindowMessage(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& lResult, DWORD dwMsgMapID = 0) \
M> { \
M> BOOL bHandled = TRUE; \
M> (hWnd); \ // это зачем нужно??

Наверное, чтоб не компилятор не выдавал warnings насчет неиспользуемых аргументов
Re: Вопрос о BEGIN_MSG_MAP и С++
От: spanasik  
Дата: 16.08.04 09:33
Оценка:
Здравствуйте, machine1, Вы писали:

M>Изучаю WTL. Столкнулся с не пониманием следующей вещи:

Чтобы на warning level 4 всё компилилось без ошибок и предупреждений.

M>з.ы. есть on-line ресурсы по ATL/WTL где учебники с 0 есть?

Тут с WTL такое дело — только по исходникам.
Могу порекомендовать отличный ресурс по WTL — viksoe.dk.
Ещё на codeproject можешь Майкла Дуна почитать — отличные статьи.

Стас.
... << RSDN@Home 1.1.4 @@subversion >>
Re: Вопрос о BEGIN_MSG_MAP и С++
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 16.08.04 10:20
Оценка:
Здравствуйте, machine1, Вы писали:

M>з.ы. есть on-line ресурсы по ATL/WTL где учебники с 0 есть?


http://www.rsdn.ru/summary/255.xml
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.