区别:头文件是“.h”文件,提供接口;源文件是“.cpp”文件,提供实现。编译器规定源文件必须包含函数入口,即main函数;而头文件不得包含函数入口,头文件不可以单独编译成一个程序,仅仅包含程序片段或者定义常,变量。

区别:

一般来说头文件提供接口,源文件提供实现

编译器规定源文件必须包含函数入口,即main函数。而头文件不得包含函数入口,头文件不可以单独编译成一个程序,仅仅包含程序片段或者定义常,变量。

头文件专为源代码调用而写的静态包含文件,可被源代码文件中#include编译预处理指令解释,如果将头文件完整,拷贝到源代码的指令处,从而编译时相当于在源代码中插入函数声明或者实现。

头文件和源文件

头文件就是.h文件,一般放类的声明,平时用的#include就是包含这种文件

源文件就是.cpp文件,一般用来放在头文件声明的类成员函数的具体实现。一般一个.h文件总会有一个同名的.cpp

例如:一个类

class T{

void showName(){}

}

这些内容放在.h文件中

void T:showName(){}

这些内容就放在.cpp文件中

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

c 中头文件和源文件的区别是什么相关推荐

  1. C++ 笔记(25)— 理解 C++ 中的头文件和源文件的作用

    1. C++ 编译模式 通常,在一个 C++ 程序中,只包含两类文件: .cpp 文件,被称作 C++ 源文件,里面放的都是 C++ 的源代码 .h 文件,被称作 C++ 头文件,里面放的也是 C++ ...

  2. C++类模板怎么写在单独的头文件和源文件中

    今天打算研究研究之前我们领导写的一段关于类模板的代码,后来发现有点坑需要记录一下.以往关于C++模板基本上都是写一个demo,然后运行通过,没有软件工程的样子,所以今天我按以往的惯例写了一个类模板,打 ...

  3. 什么是c 语言中源文件,C++中头文件和源文件详细介绍

    C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称 ...

  4. C语言中头文件和源文件的注意事项

    C语言中头文件和源文件的注意事项 文章目录 C语言中头文件和源文件的注意事项 0.前言 1.实现步骤 1.1 拆分前 1.2 拆分后 2.总结 2.1头文件内容 2.2 源文件(.c)内容 2.3 函 ...

  5. ROS中的头文件和源文件

    目录 自定义头文件的调用 头文件 可执行文件 配置文件 自定义源文件的调用 头文件 源文件 可执行文件 配置文件 头文件与源文件相关配置: 可执行文件配置: 本文主要介绍ROS的C++实现,如何使用头 ...

  6. C++中的头文件和源文件:如何写头文件

    C++中的头文件和源文件 转自:博客园http://www.cnblogs.com/lidabo/archive/2012/04/17/2454568.html 一.C++编译模式 通常,在一个C++ ...

  7. c++中头文件和源文件的区别

    区别: 一般来说头文件提供接口,源文件提供实现 编译器规定源文件必须包含函数入口,即main函数.而头文件不得包含函数入口,头文件不可以单独编译成一个程序,仅仅包含程序片段或者定义常,变量. 头文件专 ...

  8. 在QT中自定义头文件和源文件的使用方法

    在QT中自定义头文件和源文件的使用方法 最近想用QT来实现一个简单的功能,为了便于函数的集成需要将功能函数进行封装,自己补了些c++的函数封装方法,发现在QT中还不太一样.接来下简单介绍一下具体怎么实 ...

  9. C++中头文件和源文件详细介绍

    C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称 ...

最新文章

  1. oj contest ranklist时间怎么算的_几次买入基金怎么算持有天数,加仓算在原来持有时间吗...
  2. 手机游戏繁荣时代,团队的N条死路
  3. 前端学习(2364):图片的上传
  4. 交流充电桩电路图_直流充电桩和交流充电桩给电动汽车充电过程中是如何工作的?...
  5. Activity生命周期方法的调用顺序project与測试日志
  6. JSP使用教程(第四版)学习笔记
  7. web打印控件|打印预览
  8. JS实现图片拖动验证
  9. MacOS11.6.7上安装Axure9.003720无法预览问题
  10. 马哥linux视频笔记,马哥linux培训第四天笔记
  11. 网站安全工程师与渗透测试工程师有哪些区别
  12. vue全家桶网易严选,体验网易严选购物流程
  13. G6实现家族族谱关系图
  14. android 自定义控件viewgroup,Android 之 自定义控件 之 ViewGroup
  15. linux上安装NVIDIA显卡驱动以及深度学习需要的cudn、cudnn、pytorch
  16. 【魏先生搞定Python系列】一文搞定SQLAlchemy学习与使用
  17. 高精度红外测温仪单片机开发
  18. iOS App名称和内容国际化
  19. 取消卸载 Symantec 客户端需要密码提示
  20. Kafka架构篇 - 多副本机制

热门文章

  1. jooq中record_在Spring中使用jOOQ:CRUD
  2. JDK 12的Files.mismatch方法
  3. 构造函数还是静态工厂方法?
  4. 造成内存泄漏_如何造成内存泄漏
  5. 什么是JavaServer Faces(JSF)–(第2部分)
  6. 即将举行的网络研讨会:调试生产中Java的5种最佳实践
  7. junit 经典示例_JUnit4参数化和理论示例
  8. maven使用junit3_JUnit,Logback,带有Maven 3的Maven
  9. ios plist 国际化_Java与iOS对话:Java对象与Apple plist序列化
  10. junit:junit_JUnit和Hamcrest:在assertEquals上进行改进