C++——类与对象(一)

 

目录

一.类的定义

二.成员函数

三.对象

四.类中成员的访问方式


面向对象程序设计技术模仿人类描述事物的逻辑思维来构建程序。C++中,属性用数据的存储结构实现,称为类的数据成员;方法用函数实现,称为成员函数。

一.类的定义

class   < 类名>   //class是定义类的关键字,类名是用户自定义的标识符

 {

    public:

       公有段数据成员和成员函数;//一般将函数定义为public

    private:

       私有段数据成员和成员函数;//一般将数据成员定义为private
        protected:

       保护段数据成员和成员函数;

  };    //一对花括号相括说明类的成员,以分号结束类定义语句。

注意事项:(1)private用于声明私有成员。私有成员只能让类内的函数访问,不能在类外使用。

          (2)如果私有成员放在第一段,可以省略关键字private,但其他关键字不能省略。

          (3)public声明公有成员。公有成员是类的外接口,在类中和类外可见。

                  (4)在类的声明中不能对数据成员初始化

                  (5)类的对象可以是其他类的对象,但不能以类自身的对象作为本类的成员。

二.成员函数

1.在类中声明原型,可以在类外给出函数体实现,并在函数名前使用类名加以限定;

     也可以在类中声明后,直接给出函数体,形成内联成员函数。

第一种函数定义格式: 

返回类型 类名::成员函数(参数表)

   {

           //函数体

       }

例:设计钟表的时分秒

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<<Hour<<":"<<Minute<<":"<<Second;
}         //类外定义了两个函数

2.允许声明重载函数和带默认形参值的函数

三.对象

1.类的对象声明形式:

类名 对象名1,对象2,……;

(1)在声明类的同时,直接定义对象在}后直接写出对象名。例如:

class Coord { 
public:
   void setCoord(int,int);
   int getx(); 
   int gety(); 
private: 
   int x,y;
 }op1,op2;


(2))声明了类之后,在使用时再定义对象,定义的格式与一般变量的定义格 式相同。例如: 

class Coord { 
//… };
 // … 
main() 
{ 
   Coord op1,op2;  
   // … 
}

注:定义对象时,才申请存储空间。

四.类中成员的访问方式

1.类中成员互访:直接用成员名

2.类外访问:

 对象名.成员名(注:仅对于public属性的成员)

(1)通过对象名和成员运算符访问对象成员

class Student

{
     public:
       int num;
       char name [20];
       char sex;
     public:
        void display();
}stud1;
 ……
stud1.num=100;
stud1.display();

(2)指针访问

       指针名->成员名

如:student stud1,*p;

       p=&stud1;

       cout<<p->num;

(3)引用

如:student stud1;

       student &stud2=stud1;

       cout<<stud2.num;

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泉水丁冬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值