当前位置:  编程技术>c/c++/嵌入式

浅谈VC中预编译的头文件放那里的问题分析

    来源: 互联网  发布时间:2014-10-14

    本文导语:  用C++写程序,肯定要用预编译头文件,就是那个stdafx.h.不过我一直以为只要在.cpp文件中包含stdafx.h 就使用了预编译头文件,其实不对。在VC++中,预编译头文件是指放到stdafx.h中的头文件才会有效果。如下: file: stdafx.h 代码如...

用C++写程序,肯定要用预编译头文件,就是那个stdafx.h.
不过我一直以为只要在.cpp文件中包含stdafx.h 就使用了预编译头文件,其实不对。
在VC++中,预编译头文件是指放到stdafx.h中的头文件才会有效果。
如下:
file: stdafx.h
代码如下:

// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#pragma once
#ifndef _WIN32_WINNT        // Allow use of features specific to Windows XP or later.                  
#define _WIN32_WINNT 0x0501    // Change this to the appropriate value to target other versions of Windows.
#endif                       
#define WIN32_LEAN_AND_MEAN        // Exclude rarely-used stuff from Windows headers

代码如下:

// 各位注意,要想使用预编译效果的头文件要放这里。
#include
#include "xxx.h"

代码如下:

// TODO: reference additional headers your program requires here

在stdafx.cpp中保持不变即可,默认如下:
代码如下:

// stdafx.cpp : source file that includes just the standard includes
// CPPTestHelper.pch will be the pre-compiled header
// stdafx.obj will contain the pre-compiled type information
#include "stdafx.h"
// TODO: reference any additional headers you need in STDAFX.H
// and not in this file


    
 
 

您可能感兴趣的文章:

  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • 用JCreator写了一个小程序,有十几个class,当修改某个文件重新编译,javac并没有编译修改的文件,请问要如何做javac才会重新编译所有的
  • jbuilder运行时会编译整个工程的文件,请问大家如何改成只编译当前文件。
  • 如何使用arm-uclibc-gcc将.c文件编译生成.a,将.c文件编译生成.cgi?
  • 用jdk编译Java能不能让编译生成的.class文件自动保存到一个文件夹下?
  • 请教关于用c编译出来的.a文件和用c++编译出来的.a文件的互用问题
  • 菜鸟问题: redhat linux 编译一个最简单的c程序, 其中包含了<studio.h>头文件,但在gcc编译时,提示找不到studio.h文件,请问各位大大
  • 请教:有没有把java编译好的.java和.class文件编译成各个平台下的可执行文件??.exe?着急着急
  • 编译qt-x11,最后编译生成可执行文件时候,make出错
  • 请问哪里有反编译.class文件的反编译器?
  • 在linux下用proc编译程序,'*.pc'文件编译后成了'*.c?',多了一个问号?
  • 定时跑脚本编译C文件就报错,手动跑脚本就编译成功了.
  • ??请问在windows下怎样配置sh的configure文件 许多开放源码项目在编译前都要配置configure才能编译. 可...
  • 请问:在proc程序中,若里面有模板的类型,能不能通过预编译啊,(编译时老是无法识别类型,我的头文件都已包含了)
  • 编译前的java文件没有,只有class文件
  • 编译生成u-boot.bin文件要用什么交叉编译工具?
  • gcc编译的函数可不可以确定编译后的函数在文件中的顺序
  • 我再linux下面编译了一个c文件成exe,如何运行这个exe文件呢?
  • 为什么我用GCC编译后,在源文件中定义的宏被修该了?(产生编译错误)
  • 我在RedHat中用gcc编译s.c,什么都没产生,也没报错,但是编译a.c的时候就生成可执行文件,这是怎么回事?
  • 关于Servlet编译的问题,麻烦那位帮我分析一下
  • AADL建模、编译和分析工具 AADL
  • 内核编译错误,请帮我分析一下
  • 用ARMV41-UNKNOWN_LINUX-GCC编译出的Socket程序传输结构体出问题,请大家帮忙分析一下
  • CentOs5.4安装vsftp时编译出错,gcc安装不全?帮忙分析下
  • linux网络编程--客户端编译问题分析
  • 解析VC中预编译头文件的深入分析
  • android的编译和运行过程深入分析
  • C++编译器无法捕捉到的8种错误实例分析
  • 在什么地方可下载linux的源码?下载后如何编译?如何分析?如何使用?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux/centos源码安装nginx编译配置选项参数介绍
  • 请教:JSP编译器编译成字节码,跟别的编译器编译出来的有什么不同呢?
  • CentOS 6内核升级:下载编译启用新内核版本详细过程
  • 编译GCC时能不能只编译C/C++的编译器?
  • 高速的网络抓包库PF_ring介绍及编译安装
  • 关于arm交叉编译器4.3.3编译程序报错,但是3.4.5却能编译通过的问题
  • JB下,我的程序编译得好慢!请问用什么方法编译才可以快一点?或编译顺序改变一下?
  • 请问gdb是不是只能调试gcc编译的程序,在unix下用其它编译器编译的程序是不是不一定能用gdb调试的?
  • 问:关于gcc编译器和g++编译器
  • 嵌入式linux开发:一段代码在windows平台用VC编译运行正常,在linux平台用gcc编译运行正常,但是用arm-linux-gcc编译在嵌入式板子上运行就不正常.
  • 在cygwin编译驱动程序要不要交叉编译?
  • 关于如何把编译进内核的编译成模块
  • C编译器 c++编译器 wieldylcc
  • Linux下gcc编译时,如何以静态链接的形式编译?
  • PROC开发时 //注释编译不通过 如何设置使用cpp编译。
  • 编译失败后如何再继续编译
  • 如何查看已编译安装软件的编译命令行
  • 用Jdk编译时出现提示要加 -deprecation 再编译,请教??
  • linux下有没有能编译出16bit代码的C语言编译器?
  • 我使用.net编译通过,但是使用g++编译不能通过。总是提示我undefined reference to ~myclass()
  • 编译到最后,既不报错,也编译不成功


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3