解决方案 »

  1.   

    #pragma   component(browser,off) 
    该指令让编译器停止收集浏览信息。 
    注意:用此指令打开浏览信息的集合,浏览信息必须先用Project   Settings对话框或命令行打开。 
    references选项可带也可不带name参量。不带name参量的references选项用于打开或关闭引用的集合(但此时继续收集其它浏览信息)。
      

  2.   

    #pragma   pack([n]) 
    该指令指定结构和联合成员的紧凑对齐。而一个完整的转换单元的结构和联合 
    的紧凑对齐由/Zp选项设置。紧凑对齐用pace编译指示在数据说明层设置。该编译指示在其出现后的第一个结构或联合说明处生效。该编译指示对定义无效。当你使用#pragma   pack(n)时,这里n为1、2、4、8或16。第一个结构成员之后的每个结构成员都被存储在更小的成员类型或n字节界限内。如果你使用无参量的#pragma   pack,结构成员被紧凑为以/Zp指定的值。该缺省/Zp紧凑值为/Zp8。 
    编译器也支持以下增强型语法: 
    #pragma   pack([[{push|pop},][标识符,]][n]) 
    若不同的组件使用pack编译指示指定不同的紧凑对齐,这个语法允许你把程序组件组合为一个单独的转换单元。 
    带push参量的pack编译指示的每次出现将当前的紧凑对齐存储到一个内部编译器堆栈中。编译指示的参量表从左到右读取。如果你使用push,则当前紧凑值被存储起来;如果你给出一个n的值,该值将成为新的紧凑值。若你指定一个标识符,即你选定一个名称,则该标识符将和这个新的的紧凑值联系起来。 
    带一个pop参量的pack编译指示的每次出现都会检索内部编译器堆栈顶的值,并且使该值为新的紧凑对齐值。如果你使用pop参量且内部编译器堆栈是空的,则紧凑值为命令行给定的值,并且将产生一个警告信息。若你使用pop且指定一个n的值,该值将成为新的紧凑值。 
    若你使用pop且指定一个标识符,所有存储在堆栈中的值将从栈中删除,直到找到一个匹配的标识符,这个与标识符相关的紧凑值也从栈中移出,并且这个仅在标识符入栈之前存在的紧凑值成为新的紧凑值。如果未找到匹配的标识符,将使用命令行设置的紧凑值,并且将产生一个一级警告。缺省紧凑对齐为8。 
    pack编译指示的新的增强功能让你编写头文件,确保在遇到该头文件的前后的紧凑值是一样的。
      

  3.   

    #pragma component(browser,off)  
    该指令让编译器停止收集浏览信息。