<一>类,对象,this指针
  xs9mrAcZVTZn 2023年11月02日 95 0
C++

C++ 类:实体的抽象类型
实体(属性,行为) ->ADT(abstract data type)

类(属性->成员变量,行为->成员方法)

OOP语言4大特征
抽象 封装/隐藏(通过public private protected) 继承 多态

class Student{
//属性一般都是私有的成员变量
private:
    char NAME[20];
    int  age;

//提供给外部的公有方法
public:

    //在类体内实现方法,自动实现成内联方法
    void setAge(int _age){
        this.age=_age;
    }
    void setName(const char * _name){
         strcpy(NAME,_name);

    }
    int getAge(){
       return age;
    }
    const char * getName(){
       return NAME;
    }
}

Student类可以定义无数个对象,每个对象都有自己的属性,但是这些对象共享一套方法

Student stu;
stu.setAget(20);
实际上是
setAge(&stu,20);//把这个student对象的地址传递给了setAge()方法
所以编译器在编译完成后所有的成员方法都会加上this指针,用来接收调用对象的地址,例如setAge(int age) 方法会变成setAge(Student *this,int age);

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  8Tw5Riv1mGFK   2024年05月01日   78   0   0 C++
  BYaHC1OPAeY4   2024年05月08日   56   0   0 C++
  yZdUbUDB8h5t   2024年05月05日   43   0   0 C++
  oXKBKZoQY2lx   2024年05月17日   56   0   0 C++
xs9mrAcZVTZn