上一页 1 2 3 4 5 6 7 8 ··· 11 下一页
摘要: 运算符重载,就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型。你可以重定义或重载大部分 C++ 内置的运算符。例如 + 、 - 、 * 、 / 、++、--、>>、<<等,这样,你就能使用自定义类型的运算符。 基本原则 1、我们只能重载已有的运算符,而无权发明新的运算符;对于一 阅读全文
posted @ 2021-09-01 15:33 默行于世 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 背景介绍 虚函数重写:子类重新定义父类中有相同返回值、名称和参数的虚函数; 非虚函重写:子类重新定义父类中有相同名称和参数的非虚函数; 父子间的赋值兼容:子类对象可以当作父类对象使用(兼容性);具体表现为: 1. 子类对象可以直接赋值给父类对象; 2. 子类对象可以直接初始化父类对象; 3. 父类指 阅读全文
posted @ 2021-09-01 15:11 默行于世 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 动态联编与静态联编 1) 在C++中,联编是指一个计算机程序的不同部分彼此关联的过程。按照联编所进行的阶段不同,可以分为静态联编和动态联编; 2) 静态联编是指联编工作在编译阶段完成的,这种联编过程是在程序运行之前完成的,又称为早期联编。要实现静态联编,在编译阶段就必须确定程序中的操作调用(如函数调 阅读全文
posted @ 2021-09-01 10:59 默行于世 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 1) 类与类之间的关系 has-A:包含关系,用以描述一个类由多个部件类构成,实现has-A关系用类的成员属性表示,即一个类的成员属性是另一个已经定义好的类;(成员对象)组合关系。 use-A:一个类使用另一个类,通过类之间的成员函数相互联系,定义友元或者通过传递参数的方式来实现; is-A:继承关 阅读全文
posted @ 2021-08-31 23:34 默行于世 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 友元 在一个类A中,将类B声明为友元类,则类B可以访问类A的私有成员和保护成员。另外,也可以将函数声明为友元函数。 什么时候用到友元 若不同的类之间某些共享数据成员,可以使用友元,简化类的设计。 友元类友元类的声明:friend class 类名示例如下: 对于电视和遥控器来说,都共享频道数据成员和 阅读全文
posted @ 2021-08-31 23:08 默行于世 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 区别 1)静态内存分配是在编译期完成的,不占用CPU资源;动态内存分配是在运行时完成的,分配和释放需要占用CPU资源; 2)静态内存分配是在栈上分配的;动态内存分配是在堆上分配的; 3)静态内存分配不需要指针或引用类型的支持;动态内存分配需要; 4)静态内存分配在编译前确定内存块的大小;动态内存分配 阅读全文
posted @ 2021-08-31 23:01 默行于世 阅读(882) 评论(0) 推荐(1) 编辑
摘要: 默认构造函数 默认构造函数是可以不用实参进行调用的构造函数 默认构造函数调用时机 如果定义一个对象时没有提供初始化时,就使用默认构造函数。例如: class A { public: A(bool _isTrue= true, int _num=10){ isTrue = isTrue; num = 阅读全文
posted @ 2021-08-31 22:48 默行于世 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 空类 1) C++空类的大小不为0,不同编译器设置不一样,vs设置为1; 2) C++标准指出,不允许一个对象(当然包括类对象)的大小为 0,不同的对象不能具有相同的地址; 3) 带有虚函数的C++类大小不为1,因为每一个对象会有一个vptr指向虚函数表,具体大小根据指针大小确定; 4) C++中要 阅读全文
posted @ 2021-08-31 22:28 默行于世 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 三大基本特征:封装、继承、多态 封装:将客观事物抽象成类,每个类对自身的数据和方法实行访问控制(private , protected ,public )。 封装就是隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别,将抽象得到的数据和行为(或功能)相结合,形成一个有机的 阅读全文
posted @ 2021-08-31 22:18 默行于世 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 大端模式:是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址端。 小端模式:是指数据的高字节保存在内存的高地址中,低位字节保存在在内存的低地址端。 1) 直接读取存放在内存中的十六进制数值,取低位进行值判断 int a = 0x12345678; int *c = &a; c[0 阅读全文
posted @ 2021-08-30 18:54 默行于世 阅读(293) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 11 下一页