【c++】类与对象
一 .类的定义
二.对象的定义和使用
参考:
《c++从入门到精通》 人民邮电出版社
首先,区分以下声明和定义。
声明:是向计算机介绍名字,即这个名字是什么意思。
定义:是为这个名字分配内存空间。
一 .类的定义
类的定义,分为类的声明部分和类的实现这两部分。
类的声明:声明该类中的成员(成员数据和成员函数)。
类的实现:用来定义成员函数,该函数用来对成员数据进行操作。
类定义的形式:
类成员有三种访问权限:
(1)public(公有):可以在类外访问
(2)private(私有):该成员只能被该类的成员函数访问
(3)protected(保护):该成员只能被该类的成员函数或派生类的成员函数访问
其中,数据成员通常是私有的,成员函数有公有的和私有的。公有的成员函数可在类外被访问,也称之为类的接口。
二.对象的定义和使用
类是用户定义的数据类型(不占内存),对象是类的实例(占内存单元)。
对象是类的实例,对象属于某个已知的类。因此在定义对象前,要先定义类。
例如之前定义了一个Cdate类,则可以定义一个Cdate的对象,如下:
Cdate d; //对象的定义
一个对象的成员就是该对象的类的成员,其中包含成员数据和成员函数。然后可以使用“. ”(成员运算符)来使用成员变量和函数。
d.setDate(2018,5,6); d.print();
完整程序如下:
//类的定义.cpp #include<iostream> using namespace std; //类的定义 class Cdate { public: void setDate(int x,int y,int z); //成员函数声明 void print(); //成员函数声明 private: int year,month,day; //成员数据 声明 }; // 成员函数的实现 void Cdate::setDate(int x,int y,int z) { year=x; month=y; day=z; } // 成员函数的实现 void Cdate:: print() { cout<<year<<" "<<month<<" "<<day<<endl; } int main() { Cdate d; //对象的定义 d.setDate(2018,5,6); //对象使用成员函数 d.print(); return 0; }
运行结果:
------------------------------------------- END -------------------------------------