c++学习笔记(十):C++类和对象

C++编程的主要目的,是面向对象添加到C的编程语言和C++中的类是核心功能,支持面向对象的编程和通常被称为用户定义的类型。

类是用来指定对象的形式,它结合了数据的表示和操纵数据成一个整齐的包装方法。一个类中的数据和函数的被称为类的成员。

C++类定义:

当定义一个类时,定义一个数据类型的蓝本。这实际上并不定义任何数据,但它确实定义什么类的名字的意思,即,什么类的对象将包括哪些操作可以对这样的对象来执行。

类定义以关键字class后跟类名称以及类体,由一对大括号封闭。类定义必须由分号或声明的列表执行。例如,我们用关键词class如下定义Box的数据类型:

class Box
{
   public:
      double length;   // Length of a box
      double breadth;  // Breadth of a box
      double height;   // Height of a box
};

关键字public 决定它后面的类成员的访问属性。公共成员可以从类外部的类对象范围内的任何地方访问。还可以指定一个类的成员私人(private)或保护(protected),我们将在后面的小节中讨论。

定义C++对象:

类提供对象的图纸,所以基本上一个对象是从一个类创建的。我们声明一个类的对象具有排序完全相同的声明我们声明基本类型的变量。下面的语句声明Box类的两个对象:

Box Box1;          // Declare Box1 of type Box
Box Box2;          // Declare Box2 of type Box

两个对象Box1和Box2都有自己的数据成员的副本。

访问数据成员:

类对象的公共数据成员可以使用直接成员访问运算符(.)来访问。让我们试试下面的例子:

#include <iostream>

using namespace std;

class Box
{
   public:
      double length;   // Length of a box
      double breadth;  // Breadth of a box
      double height;   // Height of a box
};

int main( )
{
   Box Box1;        // Declare Box1 of type Box
   Box Box2;        // Declare Box2 of type Box
   double volume = 0.0;     // Store the volume of a box here
 
   // box 1 specification
   Box1.height = 5.0; 
   Box1.length = 6.0; 
   Box1.breadth = 7.0;

   // box 2 specification
   Box2.height = 10.0;
   Box2.length = 12.0;
   Box2.breadth = 13.0;
   // volume of box 1
   volume = Box1.height * Box1.length * Box1.breadth;
   cout << "Volume of Box1 : " << volume <<endl;

   // volume of box 2
   volume = Box2.height * Box2.length * Box2.breadth;
   cout << "Volume of Box2 : " << volume <<endl;
   return 0;
}

让我们编译和运行上面的程序,这将产生以下结果:

Volume of Box1 : 210
Volume of Box2 : 1560

要注意的是私有(private)和受保护(protected)成员不能直接使用直接成员访问运算符(.)访问。We will learn how private and protected members can be accessed.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值