类是一种由用户定义的复杂数据类型,它将不同类型的数据和与这些数据相关的操作封装在一起的集合体。
对象是类的实例,一个对象必须属于一个已知的类。
#include <iostream> using namespace std; class Date { public: //公有成员 void SetDate(int y,int m,int d); //在类体内定义的函数相当于内联函数。 void Print() { cout<<year<<"."<<month<<"."<<day<<endl; } int IsLeapYear(); private: //私有成员 int year,month,day; protected: //保护成员 };//这个分号不能忘记 //在类体外定义成员函数时,必须在成员函数名前加上类名和作用域运算符:: void Date::SetDate(int y=2012,int m=12,int d=24) { year=y; month=m; day=d; } //在类体外定义成员函数时,使用关键字inline,也可以使函数变成内联函数。 inline int Date::IsLeapYear() { return ((year%4==0&&year%100!=0) || year%400==0); } int main() { //对象的定义 Date date1,date2;//定义了两个一般对象 Date dates[31];//定义了一个对象数组,这个数组有31个元素,每个元素都是一个Date对象。 Date* pdate;//pdate是一个指向Date对象的指针 Date& date3=date1; //date3是date1对象的引用,定义时必须进行初始化 date1.SetDate(); date2.SetDate(2000,10,1); cout<<"date1:"; //cout<<date1.year<<endl; 类的对象不能直接访问类的private成员,可以直接访问public成员。 date1.Print(); cout<<"date2:"; date2.Print(); if(date1.IsLeapYear()) { cout<<"是闰年"<<endl; } else { cout<<"不是闰年"<<endl; } return 0; }