回答你的6号问题:
//{{AFX_MSG_MAP(CAskyouApp)
……
//}}AFX_MSG_MAP以上的代码限定了Visual C++向导使用的区域,不能随便修改,否则向导将无法处理,往这里添加的消息应该是ClassWizard能够处理的最常用的消息。

解决方案 »

  1.   

    1;头文件语法,指如果定义了,不用编译下面的代码
    2:
    3:
    4:ifdef 是匹配的对
    5:
    6:变灰的是class wizard处理的代码,也是c/c++标准代码,通常不用自己编辑,//{{...她不是c/c++的东西,可以看成是是注释,class wizard处理的注释
      

  2.   

    1.保证编译的唯一包含
    2._MSC_VER 
    Defines the compiler version. Defined as 1200 for Microsoft Visual C++ 6.0. Always defined 
    3.#pragma onceSpecifies that the file, in which the pragma resides, will be included (opened) only once by the compiler in a build. A common use for this pragma is the following://header.h
    #pragma once
    // Your C or C++ code would follow:4.如果没定义,需定义THIS_FILE,这只是一种预防措施!
    5.THIS_FILE
    ResThis macro expands to the name of the file that is being compiled. The information is used by the ASSERT and VERIFY macros. AppWizard and ClassWizard place the macro in source code files they create.Example#ifdef _DEBUG
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif// __FILE__ is one of the six predefined ANSI C macros that the 
    // compiler recognizes. 
      

  3.   

    mfc隐藏了很多内部机制,用//}}之类的都是它做内部处理时用的,我们不用修改,否则会影响它的内部工作