类和对象程序设计学习总结

一.类和对象的理解

1.定义:

  • 类是对一组具有相同属性和行为的对象的抽象。
  • 类是一种数据类型,对象是这种类型的变量。
  • 类的基本思想是数据抽象和封装。
  • 类要实现数据抽象和封装,需要先定义一个抽象数据类型(ADT)。

 

2.抽象数据类型(ADT):

  • 抽象数据类型由两部分组成:一组数据和对这些数据的操作

 

3.类的写法:

​class 类名
{
 
public:
 
     公有成员(一般是成员函数,程序通过public成员函数可以操纵该类型的对象)
 
private:
 
     私有成员 (只允许类自己的成员函数或友元访问,而类外的函数不能访问)
 
protected:
 
     保护成员(可以由自己的成员函数,友元和派生类成员访问)
 
};
 
​

  • C++通过限定成员的访问权限来设置边界,实现信息隐藏。关键字pubic、private和protected被称为访问限定符。访问限定符在类定义中使用。

  • 访问限定符在类定义中的出现顺序和出现次数没有限制。一个访问限定符的作用会持续到出现下一个访问限定符或类定义结束。

     

 

4.类中成员函数

​class Saledata
{
 
public:
      double totalRevennue();
      void read();
      void print(); 
       
private:
     string productNo;
     double price=0.0;
     unsigned unitSold=0;

 };
void Saledata::read(){
      cin>>productNo>>price>>unitSold;
}
void Saledata::print(){
      cout<<productNo<<":"<<price<<" "<<unitSold<<" "<<totalRevennue()<<endl;
}

注:

  • public部分一般是成员函数,private部分一般是数据成员。
  • 成员函数在类外定义时,函数名字前面要加类名字和作用域符“  ::”,表示这个函数是在其所属的类作用域内,是这个类的成员函数,不同于全局函数。
  • 成员函数的定义虽然处于类定义的花括号之外,但还是在类作用域内,所以可以自由访问类的成员,不需要成员访问语法

 

 

二.this 指针

1.  每个对象都维护自已的一份数据,而成员函数定义是所有对象共享的,如何知道是对哪个对象的数据进行操作呢?这就引入了this指针。

  • 每个成员函数都有一个隐含的参数,指向接收消息的对象,称为this指针, X类的this指针的类型是X*

 

  • this指针是一个常量,含有当前实施调用的对象的地址。不能改变this指针的值,也不能取this指针的地址

 

2.用于理解this指针的含义

class  X{
     int m;
public:
     void setVal(int v) { this->m=v;}

     void inc(int d) { this->m+=d;}
    
     void changeVal(int v) { this->setVal(v);}

};//在这段代码中this指针并不需要,只是为了帮助理解this指针的用法

 

3. this在成员函数中的用处:

(1)区分与局部变量重名的数据成员
(2)返回当前对象
(3)获取当前对象的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值