C++第二讲 类和对象

2021-10-28  本文已影响0人  大旺旺的弟弟小旺旺

目标:

类和对象的认识

c语言是一个过程语言,关注的是结果。但是c++是面向对象的,关注点是对象。在之前的c里面,结构体值能定义变量,在c++不仅仅是变量,还可以是函数。

类的定义

c++作为面向语言,可以是类来替代结构体
类和结构体有啥区别? 我认为好像一个有作用域另一个没有吧

class className{
    
};  //分号  java里面不需要

class是关键字 className {} 这些和java一样。

创建的和java的不同

方式一:

class Animal{
  public:
  void showInfo(){
}
public:
  char *name;
  int age;
};

这个方式和java基本一样,但是后面多了一个分号,作用域修饰符只需要写一次。
方式二:
头定义:

class People{
  public:
  void showInfo();
public char *name;
};

class实现

#include "people.h"

void People::showInfo(){
}

一般采用第二种。

类的封装

类的作用域

类定义了一个新的作用域,类的所有成员变量定义在作用域内,在类外定义成员,需要使用::作用域解析符知名成员属性那个类域。

class People{
public :
 void println();
};

People::println(){
}

类的实例化

用类型创建对象的过程,成为类的实例化。

如何计算类的大小

class A{
  public :
   void printA{

}
private:
  char  _a;
}

一个类的大小 ,等于类中所有的成员变量之和,同时会进行代码对齐,null类分配了一个字节。

内存对齐

this

我们创建多个类,使用s1调用的是s1的方法,s2调用的是s2的方法,c++通过一个this指针解决错落的问题,使用了一个指针,让指针指向当前对象,函数内的操作都通过指针来操作。

指针的特性:

上一篇 下一篇

猜你喜欢

热点阅读