关闭

c++中.h和.cpp中具体应该写什么内容

224人阅读 评论(0) 收藏 举报
分类:

头文件(.h):

    写类的声明(包括类里面的成员和方法的声明)、函数原型、#define常数等,但一般来说不写出具体的实现。

    在写头文件时需要注意,在开头和结尾处必须按照如下样式加上预编译语句(如下):



头文件(.h):
写在头文件里的是:类的声明(包括类里面 的成员和方法的声明)、函数声明、#define常数等。一般来说不写具体的实现 
注意:要在开头和结尾写上预编译语句,目的:防止重复编译。

#ifndef CIRCLE_H
#define CIRCLE_H

//类的声明(包括类里面 的成员和方法的声明)、函数声明、#define常数

#endif
CIRCLE_H是随便起的名字,所以叫什么是无所谓的。


源文件主要写实现头文件中已经声明的那些函数的具体代码。

源文件:实现头文件中已经声明的那些函数的代码。注意:此处应包括:c++所带的那些头文件和你自己写的那些头文件

举例说明:
编写计算圆的面积的代码:


第一步:定义Circle.h
#ifndef CIRCLE_H
#define CIRCLE_H

class Circle
{
private:
    
double r;//半径
public:
    Circle();
//构造函数
    Circle(double R);//构造函数
    double Area();//求面积函数
}
;

#endif

   注意到开头结尾的预编译语句。在头文件里,并不写出函数的具体实现。

    第2步,要给出Circle类的具体实现,因此,在源文件夹里新建一个Circle.cpp的文件,它的内容如下:

 具体内容为对类中的相应方法的实现。

#include "Circle.h"

Circle::Circle()
{
    
this->r=5.0;
}


Circle::Circle(
double R)
{
    
this->r=R;
}


double Circle:: Area()
{
    
return 3.14*r*r;
}

    需要注意的是:开头处包含了Circle.h,事实上,只要此cpp文件用到的文件,都要包含进来!这个文件的名字其实不一定要叫Circle.cpp,但非常建议cpp文件与头文件相对应。

    最后,我们建一个main.cpp来测试我们写的Circle类,它的内容如下:

 

#include <iostream>
#include 
"Circle.h"
using namespace std;

int main()
{
    Circle c(
3);
    cout
<<"Area="<<c.Area()<<endl;
    
return 1;
}




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:29191次
    • 积分:1078
    • 等级:
    • 排名:千里之外
    • 原创:79篇
    • 转载:23篇
    • 译文:0篇
    • 评论:1条