c++继承与派生 课题目标 学习声明和使用类的继承关系,声明派生类。 熟悉不同继承方式下对基类成员的访问控制。 课题引入 如何让一个类能直接调用另一个类的数据和函数。 我们常用类的友元来实现,但是友元关系并不能继承。基类的友元对派生类的成员没有特殊访问权限。 如果基类被授予友元关系,则只有基类具有特 ...
分类:
编程语言 时间:
2019-10-14 01:26:51
阅读次数:
178
继承和派生概述: 继承和派生是同一个过程从不同角的度看 保持已有类的特性而构造新类的过程称为继承。 在已有类的基础上新增自己的特性而产生新类的过程称为派生。 被继承的已有类称为基类(或父类)。 派生出的新类称为派生类(或子类)。 直接参与派生出某类的基类称为直接基类。 基类的基类甚至更高层的基类称为 ...
分类:
编程语言 时间:
2019-10-13 16:59:56
阅读次数:
119
友元的声明 友元的声明仅仅指定了访问的权限,而非通常意义上的函数声明。如果我们希望类的用户能够调用某个友元函数,那么我们就必须在友元声明之外再专门对函数进行一次声明。 为了使友元对类的用户可见,我们通常把友元的声明与类本身放置在同一个文件中(类的外部)。因此我们的Sales_data头文件应该为re ...
分类:
编程语言 时间:
2019-10-08 12:40:19
阅读次数:
99
虚函数本质就是一个函数指针 友元函数不能声明为虚函数,但是虚函数可以作为另一个类的友元。 构造函数不可以是虚函数,若声明为虚函数:不会再次构造,没有办法创建子类中父类对象 虚析构函数,让父类指针正确的释放子类对象的内存:先调用子类的析构,再调用父类的析构 纯虚函数 含有纯虚函数的类为抽象类,抽象类是 ...
分类:
其他好文 时间:
2019-10-02 12:21:01
阅读次数:
89
C++友元: 在类中有公用的成员,也有私有的成员,在类的外部,我们只能访问公用的成员,在类的成员函数里面才可以访问类的所有成员。 1.在C++中可以使用friend关键字来将函数、类声明为某个类的友元。 2.当我们将一个函数或者一个类声明为另一个类的友元的时候,就可以在这个函数或类内部对这个类的私有 ...
分类:
编程语言 时间:
2019-09-29 20:06:20
阅读次数:
104
其实c++中各种运算符,都是很特殊的一类函数,运算符函数 不过还是和普通函数有区别的 函数意味着它们可以被重载,这样方便程序员重载一些运算符 说白了,就是你可以自定义这个运算规则 下面是复数类实现加减乘除的运算 加减 用普通成员函数实现 乘除 用友元类成员函数实现 ...
分类:
编程语言 时间:
2019-09-26 11:52:39
阅读次数:
81
友元的定义:友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类,在这种情况下,整个类及其所有成员都是友元。如果要声明函数为一个类的友元,需要在类定义中该函数原型前使用关键字 friend。 友元函数的定义:类的友元函数是定义在类外部,但有权访问类的所有私有(private ...
分类:
其他好文 时间:
2019-09-25 22:33:07
阅读次数:
81
类和对象c是一门面向过程的语言关注的过程,c++作为一门面向对象的语言关注的时对象,把事情拆分为不同的对象,通过对象的交互来实现。一.类和对象的初认识1.类的引入类用关键字class引出,与之前的结构体类似,不同的是结构体内不能定义函数而在类中可以定义函数啦(c++中结构体也可以定义函数哦)2.类的定义类中成员函数的两种定义方式:可以在类中定义定义,但编译器有可能将其当作内联函数来处理故推荐第二种
分类:
其他好文 时间:
2019-09-19 17:47:26
阅读次数:
86
google代码风格 1.使用安全的分配器(allocator),如scoped_ptr,scoped_array 2.测试用的,其他的不能用: 2.1 友元 2.2 C++异常 2.3 RTTI 3.类型转换,不要用(int) 3.1 static_cast 3.2 const_cast 3.3 ...
分类:
编程语言 时间:
2019-08-24 15:06:00
阅读次数:
105
第一: private,public,protected的访问范围: private: 只能由该类中的函数、其友元函数访问,不能被任何其他访问,该类的对象也不能访问. protected: 可以被该类中的函数、子类的函数、以及其友元函数访问,但不能被该类的对象访问public: 可以被该类中的函数、 ...
分类:
编程语言 时间:
2019-08-22 19:15:07
阅读次数:
114