我只知道宏定义是如下格式
#defind ABC abc(a,b);
MFC中的宏我看不懂

解决方案 »

  1.   

    MFC宏那么多,贴一个你看不懂的出来,大家帮你看,宏就是拿一个东西代替另一个。
      

  2.   

    #if !defined(AFX_BINLINVIEW_H__8BAE6C98_775D_4F6F_9A57_6DC12795F287__INCLUDED_)
    #define AFX_BINLINVIEW_H__8BAE6C98_775D_4F6F_9A57_6DC12795F287__INCLUDED_
    这个是什么意思?
      

  3.   

    #define DECLARE_DYNAMIC(class_name) \
    public: \
    static CRuntimeClass class##class_name; \
    virtual CRuntimeClass* GetRuntimeClass() const;
    这是深入浅出MFC第三章的一个宏
      

  4.   

    这是定义运行时刻类的宏其中“##”表示连接两个字串的意思。举个例子来说:假设你定义了一个类CMyClass,你希望把它申明为运行时刻类,于是你使用了上面的宏,如下:
    class CMyClass{
        CMyClass();
        ~CMyClass();     ... ...
        
        DECLARE_DYNAMIC(CMyClass)
    };它等同于如下代码:
    class CMyClass{
        CMyClass();
        ~CMyClass();     ... ...
        
         public:
            static CRuntimeClass classCMyClass;
            virtual CRuntimeClass* GetRuntimeClass() const;
    };这样,你就在你自定义的类CMyClass中申明了一个公共静态变量classCMyClass, 它是CRuntimeClass的一个实例。OVER~