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

网站留言效果怎么做美团初期是怎么建网站

网站留言效果怎么做,美团初期是怎么建网站,北京超市网站建设,怎么做汽车网站推广方案C 是一种灵活的语言#xff0c;所以需要一种积极的方法来分析和减少编译时依赖。一种常见的达到这个目的的方法是#xff0c;将依赖从头文件里转移到源代码文件里。实现这个目的的方法叫做提前声明。 简而言之#xff0c;这些声明告诉编译器某个函数接受和返回哪些参数 是一种灵活的语言所以需要一种积极的方法来分析和减少编译时依赖。一种常见的达到这个目的的方法是将依赖从头文件里转移到源代码文件里。实现这个目的的方法叫做提前声明。 简而言之这些声明告诉编译器某个函数接受和返回哪些参数而具体的定义则规定了具体的行为。让我们根据下面两种规则来改进编译时长并减少可移植性问题并且使用 include-what-you-use 这种自动应用这些规则到你的代码库的工具。 1、提前声明类型以加速编译速度 为了改进编译时间尽可能地用提前类型声明来代替#include 指令。例如 #include iostream #include a.hpp #include b.hppclass MyClass {A a_; B* b_;public:B foo(std::string arg); };std::ostream operator(std::ostream out, const MyClass obj);编译器如果需要知道它的大小或者接口那么只需要知道它的类型的定义。而对于B 来说则不是任何类型的指针或者引用的大小都是一样的。所以这里的 include可以被提前声明替代。 编译器也不需要知道 std::string 和 std::ostream 的类型因为它们是模板可能带有其它未知的默认的模板类型参数因此我们不能提前声明它们。幸运的是头文件 为 std::ostream 提供了提前声明。即使std::ostream 的定义是需要的 仅仅提供了它的定义而没有输入流或者是 std::cinstd::cout 等等。 改进的文件仅需要以下 include 指令和提前声明 #include iosfwd #include a.hpp class B; /​code/​pre这可以让生成的文件小很多。 原则尽可能使用类型提前声明但是有外部类型的时候需要特别注意。 2、可移植性问题 如果头文件 A 包含了头文件 B那么你在包含头文件 A 的时候也会获得 B 的定义。这可能会引起一些细微的关于标准库的问题。除了某些例外并没有定义哪些头文件包含了哪些。 为了改进编译时间当需要某些特性的声明时很多编译器实现包含了一些私有头文件而不是超大的公有头文件。所以当你意外地依赖某些间接包含的头文件你的代码可能因为没有包含某些头文件而无法在别的编译器上成功编译。 这也是前一个例子里讲到的代码没有包含 string 头文件。在我的平台上这段代码依然可以编译因为 stream 头文件隐式地包含了但在别的平台则不一定。 原则将你要用到的头文件包含进来。如果你需要一个声明包含相应的头文件。即使最后你的代码里有重复的包含指令多谢头文件guard 指令这也没什么问题。 3、Include-what-you-use 好消息是你不用自己手动来执行这两条原则。有一个对应的工具include-what-you-useIWYUhttps://include-what-you-use.org 这是一个 Google 开发的基于 clang 的工具用于执行这两个原则尽可能地将包含指令替换为提前声明如果依赖简介包含则添加相应的包含指令。 从源代码编译或者从网上下载预编译二进制文件后你可以轻松地将它与 make 或者 CMake 一起使用。如果使用 make你只需要将 CXX 变量设置为 IWYU如果是 CMake 则设置好 CMAKE_CXX_INCLUDE_WHAT_YOU_USE 选项。请查看它们的文档获取更多详细信息。你也可以手动执行它接受跟 clang 一样的参数。 然后它会给你列出将会对每个文件做出的更改。例如根据我们之前举例的文件它会得出如下结果 header.hpp should add these lines: #include // for string class B; header.hpp should remove these lines: – #include “b.hpp” // lines 6-6 The full include-list for header.hpp: #include // for ostream #include // for string #include “a.hpp” // for A class B; 除此之外还有一个 python 脚本 fix_includes.py。如果你将 IWYU 的输出作为参数给它执行它会将这些更改立即执行。 原则偶尔将 IWYU 运行于你的代码。它会改进编译时间和解决可移植性问题。 4、30倍的超快编译加速是什么样的 提前声明只能提供有限的改进。现在越来越多的公司面临着在高峰时段增加计算能力的需求和更快地响应市场的压力。现在我们可以在高峰时期进行繁重的编译任务并且加速你的软件开发时间而不需要改变代码或者增添额外硬件。 通过将任务分布在网络中的本地机器或者是虚拟机上并且无缝地运行Incredibuild 的创新解决方案可以为耗时的任务进行加速例如编译、测试和其它。 欢迎点击了解 Incredibuild 加速 C/C 构建编译的解决方案并获取试用 License
http://www.eeditor.cn/news/119638/

相关文章:

  • 做网站挂广告赚多少钱erp管理系统软件有哪些
  • 电子商务网站建设的步骤一般为(wordpress圆角插件汉化
  • 怎么样建设网站网站厦门推广平台较好的
  • 高端企业网站设计公司网站建设与管理试卷_
  • 南昌品牌网站建设android编程语言
  • 哈尔滨网站建设与管理用tomcat做网站目录
  • 网站代运营合同模板免费ppt模板下载无水印
  • 网站建设维护合同模板大同网页设计
  • 高端模板网站建设网站规划书包括哪些方面
  • 百度调整导致网站排名下降最美情侣高清免费视频播放
  • 公司网站自己可以学习优化吗wordpress 时间标题展示
  • 加微信群网站怎么做的网站推广做多大尺寸
  • 在线制作h5网页seo的优化策略有哪些
  • 做推广哪个食品网站好wordpress 添加设置方法
  • 微信建微网站搬瓦工的主机做网站
  • 上市公司数据查询网站免费网站中文源码下载
  • 杭州做服装电商拿货的网站wordpress 中英
  • 有哪些做网站公司wordpress 赞 分享
  • 我做网站编辑写文章很慢怎么办erp是什么意思
  • 南山网站建设方案书wordpress主要菜单
  • 网站建设qianhaiyou域名和网站建设实训报告
  • 广州建站模板手机排版软件app
  • 店铺装修设计网站wordpress 悬浮
  • 山东网站建设团队wordpress打赏代码
  • 中国观鸟记录的网站架构ui培训设计怎么样
  • cms网站开发php网站做百度竞价利于百度优化
  • 怎么建设淘宝网站网站需要几个人
  • 网站界面风格设计描述郑州网站建设郑州网站建设
  • 哪个网站可以查询即将到期的域名腾讯云 建立wordpress
  • 网站子域名怎么做北京写字楼装修公司