c++ - windows.h 之间的区别 | 标准数据文件
问题描述
我尝试学习如何创建一个.DLL动态链接库,我读的书不是最新的,它讲述了如何.DLL为 windows 32 位制作一个。我用的是VS 2017 PRO ,本书是用VS 2013叙述的。
书中SC开头是这样的
// Dll1.cpp : Defines the exported functions for the DLL application.
//
#include windows.h
当我尝试适应VS 2017 PRO我的项目是一个.DLL动态链接库EMPTY所以它看起来像这样。
// Dll1.cpp : Defines the exported functions for the DLL application.
//
#include "stdafx.h"
这两个** HEADERS **(标题)有什么区别
- 窗口.h
- 标准数据文件
解决方案
这两个** HEADERS **(标题)有什么区别
- 窗口.h
- 标准数据文件
一切。事实上,就好像你在问汽车的使用说明书和麦片棒之间的区别。
标题"Windows.h"
包含所有库函数Windows API的声明,Windows应用程序程序员使用的所有宏,以及大量函数和子系统中使用的所有数据结构。
从广义上讲,它是您的程序与 Windows 操作系统通信所需的标头。
标题" stdafx.h "
由于 C++ 和 C 语言程序的编译非常慢 1 ,一些编译器使用技巧来加快编译时间,其中一个技巧是预编译头文件
编译为中间形式的头文件,编译器可以更快地处理它。使用预编译的头文件可以显着减少编译时间,尤其是在应用于大型头文件或包含其他头文件的头文件时。
从广义上讲,它是您在程序中使用的所有头文件都将被预编译到的头文件。
推荐阅读
- reactjs - 比较两个对象以生成第三个对象
- c# - 在asp.net core3.1 webapi中处理我的多对多关系api请求
- java - DB丢失时的书城春天
- bash - 通过管道从 find 命令的输出获取在 bash 中创建的最新目录
- python - Python - 使用递归查找列表中给定元素的索引
- windows - 比较 2 个列表以获得不相等的列表
- java - 将 java 版本从 1.6 更改为 1.8 时 javax.xml.trasformer 中的错误
- javascript - Html 音频标签和缓存
- spring-boot - 注入或过滤集合以仅获取输出通道
- vue.js - 当我在 Vue.js 3 中使用 async setup() 时,为什么会得到空白(空)内容?