当前位置: 首页 > news >正文

高端 网站seo整站优化技术培训

高端 网站,seo整站优化技术培训,企业手机网站建设价位,网站目录权限 user文章目录 c预编译头文件1.使用g编译预编译头文件2.使用visual studio进行预编译头文件2.1visual studio如何设置输出预处理文件(.i文件)2.2visual studio 如何设置预编译(初始创建空项目的情况下)2.3 visual studio打开输出编译时…

文章目录

    • c++预编译头文件
      • 1.使用g++编译预编译头文件
      • 2.使用visual studio进行预编译头文件
        • 2.1visual studio如何设置输出预处理文件(.i文件)
        • 2.2visual studio 如何设置预编译(初始创建空项目的情况下)
        • 2.3 visual studio打开输出编译时间

c++预编译头文件

预编译头文件(Precompiled Header,简称PCH)是一种提高编译速度的技术。在C++等编程语言中,每次编译程序时,编译器都需要处理所有的头文件。由于头文件通常包含大量的宏定义、类型定义和函数声明等内容,这一步骤可能会消耗较多的时间。尤其是当项目变得非常庞大且多个源文件共享相同的头文件时,这种重复处理会显著增加整个项目的构建时间。

预编译头文件的基本思想是将一些频繁使用的头文件预先编译成一种中间形式,然后在后续的编译过程中直接使用这个已经编译好的结果,而不是每次都从头开始重新解析这些头文件这样做可以大大减少编译时间,尤其是在大型项目中效果尤为明显

  • 使用预编译头文件的好处包括
  1. 加速编译过程:减少了对常用头文件内容的重复解析。
  2. 提高开发效率:更快的编译反馈循环可以让开发者更高效地工作。
  3. 资源节约:降低了CPU和内存的使用量。

如何使用预编译头文件

不同IDE或编译环境对于预编译头文件的支持方式可能有所不同。以下是一些常见的设置方法:

  • Visual Studio (VS): 在VS中,可以通过项目属性来指定一个特定的头文件作为预编译头。一般需要创建一个专门用于预编译的头文件(例如stdafx.h),并在项目设置里指定该文件为预编译头文件。同时,还需要在源代码文件顶部加入#include "stdafx.h"作为第一个包含指令。
  • GCC/Clang: 这些编译器通过命令行选项支持预编译头文件。例如,使用-Winvalid-pch来生成预编译头文件,然后用-include选项指定要包含的预编译头文件。
  • Xcode: Xcode也支持预编译头文件,并且可以通过项目的Build Settings进行配置。

需要注意的是,虽然预编译头文件能够显著提升编译速度,但不恰当地使用也可能导致问题,比如增加了编译器之间的依赖性,或者使得某些编译错误难以定位。因此,在实际应用中应当根据项目实际情况合理选择是否以及如何使用这项技术。

下方两个文件其实是等价的

在这里插入图片描述

在这里插入图片描述

  • 上图中下方代码分离出我们需要的头文件单独到一个文件中,方便我们进行头文件预编译

1.使用g++编译预编译头文件

  • 分别测试第一次编译,再修改部分代码进行第二次编译,两次编译时间如下

在这里插入图片描述

  • 直接对分离出的pch.h文件进行编译,我们一般对cpp文件编译,但对头文件编译就会生成下方截图所示文件。

在这里插入图片描述

  • 将之前生成的exe文件删除,重新对main.cpp进行编译,分别测第一次编译时间,然后修改部分代码再次重新编译第二次,我们发现两次时间都大大减少。

在这里插入图片描述

2.使用visual studio进行预编译头文件

2.1visual studio如何设置输出预处理文件(.i文件)
  • 右击项目,设置属性

在这里插入图片描述

  • 选择预处理器,将预处理到文件改为是

在这里插入图片描述

  • 这样运行的程序文件下就会出现.i文件,打开.i预处理文件,如下,可见加入的那些头文件代码量之多,这些都要重新编译(如果不进行预编译头文件的话)
    在这里插入图片描述
2.2visual studio 如何设置预编译(初始创建空项目的情况下)
  • 进行预编译:
    • 创建pch.cpp,引入pch.h文件,右击cpp文件选中属性:

在这里插入图片描述

  • 选择预编译头,改为创建

在这里插入图片描述

  • 再右击项目属性,设置项目属性。选择使用预编译头,并且选择预编译头文件

在这里插入图片描述

在这里插入图片描述

2.3 visual studio打开输出编译时间
  • 选择工具,打开选项。

在这里插入图片描述

  • 找到vc++ 项目设置,把生成计时改为是。

在这里插入图片描述

  • 一开始项目设置属性预编译头为不使用预编译头的情况:
  • 第一次编译:在这里插入图片描述
    改代码后第二次编译情况如下在这里插入图片描述
  • 将项目属性设置为使用预编译头后:
    • 第一次编译情况如下:(跟不使用的差不多)在这里插入图片描述
  • 改写部分代码后第二次进行编译,情况如下:(第二次时间大大减少)在这里插入图片描述
http://www.wangmingla.cn/news/55416.html

相关文章:

  • 网站做302跳转的意义营销的三个基本概念是什么
  • 怎样做婚庆网站手机app开发
  • 主页网站建设seo怎么学
  • 网站页面设计欣赏模板武汉seo全网营销
  • 学网站建设需要什么免费b站网站推广
  • 企业网站建设原则有哪些seo点击排名软件哪家好
  • 扬中网站优化哪家好北京网站推广营销策划
  • 哪家网站建设服务好汕头网站建设优化
  • 网站开发用哪种语言做好在百度怎么发广告做宣传
  • 西安异构国际设计公司好不好西安seo服务公司
  • 自己做网站美工软文推广案例大全
  • wordpress Meta模块路由优化大师
  • 重庆点优建设网站公司宁波seo怎么做推广渠道
  • 外贸建站哪好站长之家收录查询
  • 网站 案例展示个人在线网站推广
  • 太原小程序商城制作网站seo外链建设
  • 广汉市建设局网站引擎搜索是什么意思
  • 枣庄网站设计友情链接交换软件
  • 小型网站开发需要什么步骤离我最近的电脑培训中心
  • 网站推广链接互联网营销推广公司
  • 网站开发与推广方向手机seo关键词优化
  • 用网站做成软件合肥关键词排名
  • 网站服务器租用恒创哪家公司建设网站好
  • 无锡做网站baiduseo对各类网站的作用
  • 政务公开网站建设意义推推蛙贴吧优化
  • 淘宝做基础销量怎么网站公众号推广接单平台
  • 怎么用源码做网站免费长尾词挖掘工具
  • 换物网站为什么做不起来广州关键词搜索排名
  • 徐州seoseo排名系统
  • wordpress迁移网站惠州seo优化