当前位置: 代码迷 >> 综合 >> 3_28 C++笔记 类
  详细解决方案

3_28 C++笔记 类

热度:5   发布时间:2023-12-05 19:53:10.0

public:类内可以调用,类外可以调用,子承父业

private:类内可以调用,类外不可调用,子不成父业

protected:类内可以调用,类外可以调用,子承父业


C++中struct和class的唯一区别使,struct默认是public

但是class默认是private


成员属性设置为私有的好处:

1.自己可以控制读写的权限

2.对于写 可以检测数据的有效性


C++ 函数参数传递的三种方式 (传参、传地址、传引用)_赫萝的红苹果的博客-CSDN博客_c++函数传址以前没有注意到的一个知识点:

传指针在函数内修改指针的指向并不会影响函数外该指针的指向。

之前我一直用的都是传指针

今后可以尝试传引用

说白了 引用传递我基本还没用过呢!!!

C++函数引用传递(超详细)

提示:应该仅在绝对需要时才使用引用变量。任何时候允许一个函数来改变函数之外的变量,其实都是在创建潜在的调试问题。


对象的初始化和清理

1.构造函数--初始化

构造函数没有返回值,也不用写void

    //函数名与类的名称相同

    //构造函数可以有参数,可以发生函数重载

    //创建对象的时候,构造函数自动调用,只调用一次

2.析构函数--清理

析构函数 清理操作 没有返回值 不写void

    //函数名和类名相同,在名称前面加~

    //析构函数不可以有参数,不可以重载


什么是函数的重载?

C++ 允许多个函数拥有相同的名字,只要它们的参数列表不同就可以,这就是函数的重载(Function Overloading)。借助重载,一个函数名可以有多种用途。

C++函数重载详解

在使用重载函数时,同名函数的功能应当相同或相近,不要用同一函数名去实现完全不相干的功能,虽然程序也能运行,但可读性不好,使人觉得莫名其妙。

functions in C++ are uniquely identified by both their names and their parameters

– but NOT their return type!


构造函数的分类:

按照参数分类:无参构造(默认构造) 和 有参构造

按照类型分类: 普通构造 和 拷贝构造

拷贝构造:

 注意要用常量+引用的方式传进去!!



构造函数的调用方法:

一、括号法:(推荐)

 二、显示法

三、隐式转换法

  相关解决方案