7. 类的使用
C语言程序给予模块对任务进行分解和人员的分工,每个模块包含了模块变量和模块函数,模块的最主要的构成元素是函数。C语言的调用方式如下:
Compute模块的头文件compute.h代码如下:
//函数原型声明
void Init(int, int);
int Sum();
int Minus();
compute模块的实现文件compute.cpp代码如下:
int i;
int j;
void Init(int m, int n)
{
i = m;
j = n;
}
int Sum()
{
return i+j;
}
int Minus()
{
return i-j;
}
Main主模块的实现文件main.cpp代码如下:
#include <stdio.h>
#include "compute.h"
void main()
{
Init(5, 10);
printf("5和10之和等于%d/n",Sum()); //不用指定是哪两个数相加
printf("5和10之差等于%d/n",Minus());//不用指定是哪两个数相减
}
程序结果:
5和10之和等于15
5和10之差等于-5
Press any key to continue.
用C++来实现同样的功能:
CCompute类的头文件Compute.h代码如下:
class CCompute
{
protected:
int i;
int j;
public:
CCompute();
~CCompute();
void Init(int m, int n);
int Sum();
int Minus();
}; //一个类的定义结束要有分号!! 否则出现的错误你都不知道在哪里寻找。
CCompute类的实现文件Compute.cpp代码如下:
#include "Compute.h" //要包含头文件,c模式下.h .cpp是自动对应的c++中不是,最好都加上。
CCompute::CCompute(){
}
CCompute::~CCompute()
{
}
void CCompute::Init(int m, int n) //类型标示不要忘了
{
i = m;
j = n;
}
int CCompute::Sum()
{
return i+j;
}
int CCompute::Minus()
{
return i-j;
}
main.cpp的文件代码如下:
#include <iostream.h>
#include "Compute.h"
int main()
{
CCompute computeObj; //创建对象
computeObj.Init(5, 10); //调用时就不需要类型标示了
cout<<"5和10的和等于"<<computeObj.Sum()<<endl;
cout<<"5和10的差等于"<<computeObj.Minus()<<endl;
return 0;
}
程序结果如下:
5和10之和等于15
5和10之差等于-5
Press any key to continue.
这种算不上经典的小程序其实可以帮助我们更好的了解什么是类及类的用法,不会使人避而远之。