声明与编译
来源:互联网 发布:知茵女装品牌介绍 编辑:程序博客网 时间:2024/06/03 19:53
为什么要实现声明,如果不设计声明机制,会出现什么情况:在程序A中调用程序B,如果编译通过,在运行时,发现B不存在或者说B的某个参数类型不对或参数个数不对,这时候就会报错,在运行的时候报错(极有可能到处报错),你的体验会好吗?所以声明应运而生。对将要调用的函数,在调用之前进行声明,编译系统根据函数原型对函数调用进行全面检查,如果不匹配,就报错,属于语法检查。
把所有的函数原型声明都放到一个头文件,到时候#include这个头文件,就相当与集中声明了调用函数,集中检查分析这些头文件
如果一批头文件要被很多其它源文件#include,它就会被检查分析很多次,有的头文件有互相包含后,最后可达到几十万行,很费时间,于是就产生了预编译:当编译器处理源文件#include “stdafx.cpp”(只有#include “stdafx.h”)中的一组头文件时,把编译好的映像文件保存在磁盘上,当其它源文件引用同样一组头文件时,编译器直接读取编译好的文件而不用再分析。
所以在源文件中#include “stdafx.h”(或者通过设置工程讲其它头文件指定为预编译头文件),起到的两个效果为:第一,声明了一组头文件(可能会用到其中几个头文件),第二,编译器不会再次分析头文件中声明的函数。
- 声明与编译
- 提示与“MAX”声明中的类型不匹配,不能编译
- 函数的声明、定义与函数的编译、链接
- 关于using声明与using编译指令 c++
- 编译过程 前置声明
- C++编译,前置声明
- C++编译与链接(0).h与.cpp的定义与声明
- C++编译与链接(0)-.h与.cpp中的定义与声明
- C++_命名空间namespace 与 using编译指令 与 using声明使用。
- 条件编译、Unix中C函数声明、变量存储类型、程序与进程
- 编译的警告:隐式声明与内建函数 ‘malloc’ 不兼容
- using 声明和using编译
- using声明和using编译
- 读书笔记--指针与声明
- 函数定义与声明
- 声明与定义
- 定义与声明
- const与数组声明
- Oracle数据库中的索引详解
- demo学习心得
- 一些关于NMAKE的使用方法
- 用POI的HSSF来控制EXCEL的研究
- C++的XML编程经验――LIBXML2库使用指南(转)
- 声明与编译
- 面试总汇
- 返回地址的问题
- vs2005新建项目中没有ASP.NET WEB应用程序的解决方法
- Symbian中多语言的实现
- webwork项目移植到struts2
- 误会
- 站长必备SEO工具
- linux上c语言 获得网络接口的统计值