什么是类?
- 类是一种复杂的数据类型,它将不同类型的数据和与这些数据相关的操作封装在一起的集合体
- 类是一种用户自定义类型
- 类的结构是用来确定一类对象的行为的,而这些行为是通过类的数据结构和相关的操作来确定的
- 类是面向对象程序设计方法的核心。在面向对象程序设计中,程序模块是由类构成的。
类的定义格式
//说明部分
class <类名>
{
public:
<成员函数和数据成员的说明或实现>
private:
<数据成员或成员函数的说明或实现>
};
//实现部分
<函数类型><类名>::<成员函数名>(<参数表>)
{
<函数体>
}
类体中不允许对数据成员进行初始化
比如
class clock
{
public:
void settime(int newh,int newm,int nwes);
void showtime();
private:int hour(10), minute(20), second(45);
int hour,minute,second;
};
老师布置的关于类的作业
复数类
#include<iostream.h>
#include<cmath>
class fushu
{
public:
void setnumber(int shi,int xu);
void shownumber();
void Plus(fushu x);
private:
int shishu,xushu;
};
void fushu::setnumber(int shi,int xu)
{
shishu=shi;
xushu=xu;
}
void fushu::shownumber()
{
if(xushu>0)
{
cout<<"\n"<<shishu<<"+"<<xushu<<"*i";
}
else if(xushu<0)
cout<<"\n"<<shishu<<"-"<<abs(xushu)<<"*i";
else
cout<<"\n"<<shishu;
}
void fushu::Plus(fushu x)
{
cout<<"\n"<<"相加后为:"<<shishu+x.shishu<<"+"<<xushu+x.xushu<<"*i";
}
int main()
{
fushu A,B;
int a,b,c,d;
cin>>a>>b>>c>>d;
A.setnumber(a,b);
B.setnumber(c,d);
A.shownumber();
B.shownumber();
A.fushu::Plus(B);
return 0;
}
运行结果
时钟类
#include<iostream.h>
class clock
{
public:
void SetTime(int Newh,int Newm,int News);
void ShowTime();
private:
int Hour,Minute,Second;
};
void clock::SetTime(int Newh,int Newm,int News)
{
Hour=Newh;
Minute=Newm;
Second=News;
}
void clock::ShowTime()
{
cout<<"\n"<<Hour<<":"<<Minute<<":"<<Second;
}
int main()
{
clock d1;
int a,b,c;
cin>>a>>b>>c;
d1.SetTime(a,b,c);
d1.ShowTime();
return 0;
}
运行结果