类和对象的特征

  • c++的特点:封装,继承,多态
    类的声明和对象的定义:
  • c++中对象的类型称为类
  • 在用class定义的类,既不用private也不用public则默认类中成员是私有的。
  • 在struct定义的类中,既不用private也不用public则默认类中成员是私有的,这是因为c++要兼容c语言,在c语言中struct定义的结构体,在结构体外也是可以被其他成员访问的。
  • private和public属于成员访问限定符。
  • 直接定义对象,student stud1.编译系统会自动为这个对象分配存储空间,以存放对象中的成员。
  • 因为可以把函数的声明放在类中,而把函数的定义放在类外,所以就要求,函数的定义必须在声明了函数的类的下面,不然编译就会出错。
    在这里插入图片描述
    1》成员函数的存储方式:
    同一个类的不同的对象中的数据成员的值一般是不同的,但是成员函数段的代码是相同的,也就是说无论你调用哪一个对象的成员函数,他所调用的函数代码是相同的,所以在c++中对于多个对象,只是把数据成员单独储存在对象中,而把多个对象共用的函数体代码,存储在另外的地方也就是说,对象的存储大小只有数据成员的大小,而不包括成员函数。无论成员函数是在类外面定义,还是在类内部定义,他们所用到的存储方式和我上面所说到的是一致的。
    2》访问对象中的成员:
    1.对象名.成员
    2.指向对象的指针
    3.对象的引用
    3》是一种抽象的数据类型,并不是一个实体,也不占有存储空间,而对象是实际存在的实体,是占用存储空间的。
    4》函数的默认值可以在定义和声明的位置给出,但是我们一般是在声明的时候给出,但是不能两个地方同时给出,要是两个地方给出的默认值相同还好说,要是不相同,(刚开始我是这样认为的,编译器是由上给下进行编译的,声明在定义头里,要是默认值给在声明里面则默认值就是声明,定义在声明前面默认值给到定义里面那么默认值就是定义,但是是错误的)则以声明给出的默认值为准。
    5》在主函数中调用类中的成员函数,应该指明类的对象用.进行访问操作,在类外进行函数声明的时候要指定在哪一个作用域之中,用作用域访问符::进行操作。
    6》接口与实现分离:好比用户使用计算机,只需要知道点击哪个按钮会有什么作用,不必关心他的实现和具体操作,用户也没办法改变计算机的结构和功能,一切与用户无关的操作都封装了起来,用户看不见也摸不着,这个就是接口与实现分离。

猜你喜欢

转载自blog.csdn.net/weixin_43767691/article/details/89934017