2.C++——类

2021/5/13 12:27:15

本文主要是介绍2.C++——类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C++-类学习笔记

整理者:满恂钰

1.基础知识

1.1类是什么

具有相同性质的对象,我们可以抽象称为类,类是同一类所有对象的变量和方法的蓝图或原型。所谓的"对象"是指现实世界中的一切事物。

1.2类是干嘛的

类抽象了具有相同性质的对象,当我们创建类的实例时,就建立了这种类型的一个对象,然后系统为类定义的实例变量分配内存。然后可以调用对象的实例方法实现一些功能。类是属于用户自定义的数据类型, 并且该类型的数据具有一定的行为能力, 也就是类中说描述的方法。相同类的实例共享相同的实例方法。

通常来说, 一个类的定义包含两部分的内容, 一是该类的属性, 另一部分是它所拥有的方法。

1.3基本的书写逻辑

语法: class 类名{ 访问权限: 属性 / 行为 };

例子:

class 类名

{

    public:

    //公共的行为或属性

 

    private:

    //私有的行为或属性

};

说明:

    1. 类名需要遵循一般的命名规则;

    2. public 与 private 为属性/方法限制的关键字, private 表示该部分内容是私密的, 不能被外部所访问或调用, 只能被本类内部访问; 而 public 表示公开的属性和方法, 外界可以直接访问或者调用。           

    3. 结束部分的分号不能省略。

1.3.1类的实现:类的实现就是完成其方法的过程。

1、 在类定义时定义成员函数(成员函数的实现可以在类定义时同时完成)

2、 在类外定义成员函数(在类外定义成员函数通过在类内进行声明, 然后在类外通过作用域操作符 :: 进行实现)

注意:对同一成员函数来说, 在类内声明的形式和类外对其定义时函数头形式, 二者其返回类型、成员函数名、参数列表都要一致。

3、对象定义:

语法: 类名 对象名1;

4、访问数据成员:

类的对象的公共数据成员可以使用直接成员访问运算符 . 来访问。

 

例子:

#include <iostream>

using namespace std;

 

class Box

{

   public:

      double length;   // 长度

      double breadth;  // 宽度

      double height;   // 高度

      // 成员函数声明

      double get(void);

      void set( double len, double bre, double hei );

};

// 成员函数定义

double Box::get(void)

{

    return length * breadth * height;

}

 

void Box::set( double len, double bre, double hei)

{

    length = len;

    breadth = bre;

    height = hei;

}

int main( )

{

   Box Box1;        // 声明 Box1,类型为 Box

   Box Box2;        // 声明 Box2,类型为 Box

   Box Box3;        // 声明 Box3,类型为 Box

   double volume = 0.0;     // 用于存储体积

 

   // box 1 详述

   Box1.height = 5.0;

   Box1.length = 6.0;

   Box1.breadth = 7.0;

 

   // box 2 详述

   Box2.height = 10.0;

   Box2.length = 12.0;

   Box2.breadth = 13.0;

 

   // box 1 的体积

   volume = Box1.height * Box1.length * Box1.breadth;

   cout << "Box1 的体积:" << volume <<endl;

 

   // box 2 的体积

   volume = Box2.height * Box2.length * Box2.breadth;

   cout << "Box2 的体积:" << volume <<endl;

 

 

   // box 3 详述

   Box3.set(16.0, 8.0, 12.0);

   volume = Box3.get();

   cout << "Box3 的体积:" << volume <<endl;

   return 0;

}

2.对基本知识的扩展应用

2.1对象的作用域、可见域与生存周期:

类对象的作用域、可见域以及生存周期与普通变量的保持相同, 当对象生存周期结束时对象被自动撤销, 所占用的内存被回收, 需要注意的是, 如果对象的成员函数中有使用 new 或者 malloc 申请的动态内存程序不会对其进行释放, 需要我们手动进行清理, 否则会造成内存泄露。

3.在代码中的书写步骤

3.1 创建类

 

3.2设置访问修饰符(public、protected、private)

3.3定义变量和方法(类内或类外两种方式)

3.4主函数中创建实例化对象

4.注意事项

4.1 struct和class区别?

在C++中 struct和class唯一的区别就在于 默认的访问权限不同。

区别:

struct 默认权限为公共

class 默认权限为私有

5.参考网址:

5.1 C++ 类 & 对象:

https://www.runoob.com/cplusplus/cpp-classes-objects.html

5.2 C++类(Class)的定义与实现:

https://blog.csdn.net/xulingxin/article/details/81335030



这篇关于2.C++——类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程