摘要: C++允许程序员重新定义标准运算符在与类对象一起使用时的工作方式。 1.重载赋值运算符 为了解决由对象的按成员赋值引起的问题,就需要修改赋值运算符的行为,以便在将其应用于具有指针成员的类的对象时,执行按成员赋值之外的其他操作。实际上,就是要提供用于该类的对象的赋值运算符的不同版本。所以,这样做也可以 阅读全文
posted @ 2020-04-04 19:22 Ruigel1 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 需要动态分配内存的构造函数,都需要程序员自己编写复制构造函数,如果使用默认构造函数将会出现问题。 程序员可以定义一个类的复制构造函数。程序员定义的复制构造函数必须有一个形参,它是对同一个类的引用。示例原型: NumberArray :: NumberArray(NumberArray &obj) { 阅读全文
posted @ 2020-04-03 15:42 Ruigel1 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 友元是一个不属于类成员的函数,但是它由权访问该类的私有成员。 私有成员对于类外部的所有程序部分而言都是隐藏的,访问它们需要调用一个公共成员函数,但有时也可能会需要创建该规则的一项例外。友元函数是一个不属于类成员的函数,但它可以访问该类的私有成员。换句话说,友元函数被视为好像是该类的一个成员。友元函数 阅读全文
posted @ 2020-04-02 21:15 Ruigel1 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 如果一个成员变量被声明为static,那么该类的所有对象都可以访问该变量;如果一个成员函数被声明为static,那么它可以在类的任何实例被定义之前被调用。 默认情况下,每个类的对象(类的一个实例)都有它自己的类的成员变量副本。一个对象的成员变量与同一个类的其他对象的成员变量是独立分开并且有区别的。 阅读全文
posted @ 2020-04-02 18:53 Ruigel1 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 默认情况下,编译器为类的每个成员函数提供了一个隐式形参,该形参指向被调用的成员函数所在的对象。该隐式形参成为this。常量成员函数是一个不会修改调用它的对象的函数。 1.this指针 隐式对象形参的实际形参就是调用成员函数的对象的地址。因此在类的成员函数中也可以通过使用( *this )表达式来访问 阅读全文
posted @ 2020-04-02 12:09 Ruigel1 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 标准模板库包含一个成为矢量(vector)的数据类型。它与一位数组类似,但与标准数组相比有一些优点。 标准模板库(STL)是程序员定义的数据类型和算法的集合,可以供C++程序使用。这些数据类型和算法不是C++语言的一部分,但它们的创建是对内置数据类型的有益补充。如果打算继续在计算机领域学习,那么就应 阅读全文
posted @ 2020-04-01 21:46 Ruigel1 阅读(2907) 评论(0) 推荐(0) 编辑
摘要: typedef声明允许把别名与简单的或结构化的数据结构相关联 typedef声明允许程序员为现有数据类型创建别名或同义词,这可以是简单的数据类型,例如int; 也可以是更复杂的数据类型,例如数组。该声明的最简单的形式如下: typedef <现有数据类型> <别名> 例如,以下语句将examScor 阅读全文
posted @ 2020-04-01 10:30 Ruigel1 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 基于范围的for循环是一种可以针对数组中每个元素迭代一次的循环。每次进行该循环迭代时,就会将一个元素从数组复制带变量。基于范围的for循环是C++ 11中的新功能。 C++ 11提供了一个特殊版本的for循环,在很多情况下,它都可以简化数组的处理,这就是基于范围的for循环(Rang-Based f 阅读全文
posted @ 2020-03-31 18:36 Ruigel1 阅读(2111) 评论(1) 推荐(1) 编辑
摘要: 无论正在执行的是哪个函数或者控制机制,exit()函数都将导致程序终止。 当遇到main函数中的return 语句时,C++程序将停止执行。 其他函数结束时,程序并不会停止。程序的控制将返回到函数调用之后的位置。然而,有时候会出现一些非常少见的请款,使得程序有必要在main以外的函数中终止。要实现这 阅读全文
posted @ 2020-03-31 12:48 Ruigel1 阅读(1883) 评论(0) 推荐(0) 编辑
摘要: 枚举数据类型是一种由程序员定义的数据类型。其合法值时与它们关联的一组命名整数常量。 它之所以被称为枚举类型,是因为命名常量是作为数据类型定义的一部分而枚举或列出的。以下是枚举类型声明的示例: enum Roster {Tom, Sharon, Bill, Teresa, John}; 该语句将创建一 阅读全文
posted @ 2020-03-30 16:43 Ruigel1 阅读(447) 评论(0) 推荐(0) 编辑