c++学习(九)

程序的多文件组织:

一个程序包括多个源文件(.cpp)/头文件(.h),比如main.cpp,student.cpp。在源文件中可以引用自己定义的头文件,比如

#include "students.h"。之所以用““””而不用<>是因为,如果用<>,那么在找相应文件的时候会去系统文件夹中找,而如果用""会优先去当前目录寻找。而我们自己编写的头文件是存储在当前目录下和源文件一个目录的,所以要用""。编译的过程中,每一个源文件会生成一个.obj(.o)的目标文件。链接器(linker)将一个个的目标文件(或许还会有若干系统库)链接在一起生成一个完整的可执行文件.exe。

#include其实就是在编译之前就将include文件中的内容copy过来。

类的声明可以单独放到一个头文件(.h)中。类中的成员函数的定义可以放到和main函数不一样的源文件中(.cpp)。


类声明和成员函数定义的分离:

1. 将类的声明放在指定的头文件中。

如果用户想要使用该类,只要把有关的头文件包含进来。

2.程序中可以用该类来定义对象。

在头文件中包含了类的声明,在程序中就可以用该类来定义对象,就可以调用这些对象的公用成员。

3. 成员函数的定义另外放在一个文件中,与声明类的头文件分开。

类成员函数的定义一般不放在头文件中,而放在另一个文件中。

内置函数的定义要写在头文件中。

这种方式实现了信息隐藏。


用好头文件:

头文件的优势:

支持代码的局部单独编译,尤其对类及成员函数声明。

使用头文件的原则:

头问价用于声明,而不是定义。

头问价一般含有支持分别编译所需的类定义及变量和函数的声明。

一些const对象要定义在头文件中。

内置成员函数需要定义在头文件中。


头文件中:

#ifndef也是预编译的命令,表示if not define.结尾对if的结束为#endif。如果if  not define判断出是已经定义过了,那么之后的

define中的代码就不会被编译。


类库:

各个文件单独编译带来的好处:

不许每次都重复对所有代码进行编译,而只需要编译一次就可以。把编译后所形成的目标文件保存起来,以后再需要时把它调用出来直接与程序的目标文件

连接即可。

在实际工作中,并不是将一个类声明做成一个头文件,而是将若干个常用的功能相近的类声明集中在一起形成类库


两种c++类库:c++编译系统提供的类库;用户根据自己的需要做成的用户自定义类库,提供自己和自己授权的人使用。


类库包括两个组成部分:

类声明头文件————公用接口

已经编译过的成员函数的定义,它是目标文件————(私有实现).(用户看不见)


在用户程序中包含类声明头文件(用户使用类的公用接口,比如:cout,cin),用户无需知道类的实现。于都头文件中成员函数的函数原型声明,就知道了类如何使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值