下学期第二次博客     类

                                              下学期第二次博客     类
          类能用来自定义想要的数据类型,反映待解决问题中的各种概念。类的基本思想是数据抽象和封装。封装是将数据和操作捆绑在一起并加上访问控制。
类的实现要包括类的数据成员,负责操作的函数等等。    例如,要统计学生的成绩信息,就可以以类的形式来定义一个数据类型,这个类型包括学生姓名,学号,班级,专业,考试成绩等等,定义完数据类型后,再定义一些函数来对这些数据成员进行处理操作,最终达到想要的结果。     
      抽象数据类型(ADT)由一组数据和对这组数据的操作构成。定义抽象数据类型可以用结构体加全局函数。结构体来描述数据,全局函数来实现操作,数据通过结构体指针参数传递给函数。  定义抽象数据类型也可以用数据成员加成员函数,这种方式更加直观而且更加方便。
成员函数像数据成员一样,不能独立使用,必须由结构体类型的变量使用成员选择语法来进行调用。实施调用的这个结构体变量就是成员函数操作的对象。   
         数据成员可以在类内初始化,可以用构造函数来负责对象的初始化,构造函数的名字和类名字相同且没有返回类型,可以重载,构造函数的参数通常为数据成员提供初始值。构造函数至少写两个,其中一个不带参数。  有两种形式:
成员1(初始值1)[,成员2(初始值2),…]
构造函数(参数表):初始化列表{函数体}
第二种方式效率更高。
在初始化列表中,每个成员只能出现一次,而且成员初始化的顺序必须和在类定义中的顺序相同。   析构函数负责在对象生存期结束时返回相关资源和自动释放资源。析构函数不是必须定义的,一般不需要显式调用析构函数。                                                          成员函数可以在类在定义,但是要在函数名前加类名字和作用符 ::
为了安全起见,可以通过限定成员的访问权限来设置边界,实现信息隐藏。
关键字public,private,protected是访问限定符。
public:
     公有成员声明;
private:
     私有成员声明;
protected:
     被保护成员声明;
public成员在程序的任何函数或类中都可以被访问,private成员只能由类自己的成员函数或友元访问,如果信息需要隐藏,就可以将其声明为private.           数据成员加成员函数,这种结构体类型的变量被称为对象。对象是数据和操作的封装体。关键字class用来定义类,用法和struct一样。struct成员默认访问限定是public,而class成员默认访问限定是private。     使用友元可以访问一个类中的私有成员,使用方式为在想要访问数据成员的函数前加上friend。
          每个成员函数都有一个隐含的参数,指向接收消息的对象,称为this指针。X类的this指针的类型是X*。每个成员函数都有一个this指针形参,指向结构体中成员。this指针只能在成员函数中使用。                                                                                                  一个类的对象可以由const限定为常量const对象不能修改。可以将一个成员函数声明为const,表示它不会修改对象的数据成员。语法形式为:
返回类型  成员函数名(参数表)  const  {函数体}
const对象只能调用声明为const的成员函数,非const对象可以调用const成员函数。
       类的静态数据成员被当作类类型内部的全局变量,属于整个类,不专属于某个对象。静态数据成员不会与全局域中的名字冲突。   声明方式为在类的数据成员声明前加关键字static。   相似的,静态成员函数的声明是在类定义的函数声明前加static关键字,静态成员函数无this指针。
          类一定要用到构造函数(最少两个,其中一个无参),一定要用到get,set函数(使类内成员能在主函数内处理)。不要加提示信息,像cout<<"成绩:"这样的,
!类每增加一个成员函数,在主函数中,都要对它进行测试运行。

       总结:c++这门课很重要,学好c++,以后的语言学起来也相对轻松,重要的是要学会c++的思想。第六章学的类能够处理各种各样的问题,定义各种数据类型加函数来解决问题。自我感觉c++要比c语言难很多,所以更要多花时间去学,而且这也是自己的专业课,十分重要!
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

十只兔子OVO

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

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

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

打赏作者

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

抵扣说明:

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

余额充值