cpp中的类和对象

目录

类和对象的区别

封装特性

this指针

C++中类编译过程


类和对象的区别

      类(class):概念产物,是设计产物(相对于图纸),没有开辟空间
      对象(object):是由类实例化出来的代码和数据的集合
      类的实例化就成为了对象
      我们操纵的是对象,不是类

在C++中,将类中的成员分为三类:私有成员(private),公有成员(public)和保护成员(protect)。私有成员(包括数据成员和成员函数),只能被类内的成员函数访问,而不能被类外的对象访问;公有成员(包括数据成员和成员函数)既可被类内的成员函数访问,也可被类外的对象访问。

C++中,在默认情况下(即没有指定属于私有韩式共有时),类中的成员是私有的。在实际应用中,一般把需要保护的数据设置为私有的,把他隐藏起来,而把成员函数设置为公有的,作为类与外界的接口。

下面用一个简单代码说明类的声明:

#include<iostream>

using namespace std;

class Object//声明了一个名为Object的类
{
	//私有成员
	int va;//数据成员
	//公有成员
public:
	void Print()//成员函数
	{
		cout << va << "  "<< endl;
	}
};

int main()
{
	Object obj1;//定义类Object的对象obj1
	obj1.Print();//类外的对象obj1可以访问公有成员函数Print

	return 0;
}

 其中,class是声明类的关键字,类名是要声明的类类型的名字;后面的花括号表示处类的声明范围;最后的分号表示类声明结束。

在类中,封装了有关数据和对这些数据进行操作的函数,分别称为类都数据成员和成员函数。

private和public称为成员访问限定符,用他们来声明各成员的访问属性。每个成员访问限定符下面又都可以由数据成员和成员函数。数据成员和成员函数一般称为类的成员。

private部分称为类的私有部分,这一部分的数据成员和成员函数称为类的私有成员。私有成员只能由本类的成员函数访问,而类外部 任何访问都素非法的。这样,私有成员就整个隐藏在类中,在类的外部,对象无法直接访问他们,实现了访问权限的有效控制。

public部分称为类的公有部分,这部分的数据成员和成员函数称为类的公有成员。公有成员对是完全开放的,公有成员既可以被本类的成员函数访问,也可以在类外被该类的对象访问。公有成员函数是类与外界的接口,来自类外部的对私有成员的访问需要通过这些接口来进行。

protect部分,被protected说明的数据成员和成员函数称为保护成员。保护成员可以由本类的成员函数访问,也可以由本类的派生类的成员函数访问,而类外的任何访问都是非法的,即他是半隐蔽的。

数据成员可以是任何数据类型,但是不能用自动(auto)、寄存器(register)或外部(extern)进行说明。

类声明中的private、protect和public三个关键字可以按任意顺序出现任意次。

对于一个具体的类来讲,类声明格式中的三个部分并非一定要全有,但至少要有其中的一个部分。一般情况下,一个类的数据成员应该声明为私有成员,成员函数声明为公有成员。这样,内部的数据隐藏在类中,在类前面的外部无法直接访问,是数据得到有效保护,也不会对该类以外的其余部分造成影响,程序模块之间的相互作用就被降低到最小。

封装特性

       对外是不可访问的

this指针

C++中类编译过程

  •  第一步:识别类里面的属性成员(变量)
  •  第二步:识别方法,只识别方法的声明
  •  第三步:改写

 

©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页