上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 23 下一页
摘要: 15.2.1 定义基类 类的定义 定义Quote类 class Quote{ public : Quote() = default; Quote(const string &book, double sales_price): bookNo(book), price(sales_price) {} 阅读全文
posted @ 2022-03-04 12:43 Miaops 阅读(291) 评论(0) 推荐(0)
摘要: 调用时解析 使用基类的引用或指针调用虚函数时,会发生动态绑定 所以,知道运行时才会知道到底调用了哪个版本的虚函数 因此: 虚函数是在运行时才被解析 虚函数必须被定义 注意: 普通类型(非指针和引用类型)调用虚函数时不会发生动态绑定 class A{ public : //基类的print是虚函数 v 阅读全文
posted @ 2022-03-04 12:43 Miaops 阅读(56) 评论(0) 推荐(0)
摘要: 目录一、作用域与名字查找1.作用域的嵌套2.在编译时进行名字查找3.名字冲突与继承4.通过作用域运算符来使用隐藏的成员二、同名函数隐藏与虚函数覆盖1.几种必须区分的情况2.一个更复杂的例子 类的关系图: 一、作用域与名字查找 1.作用域的嵌套 派生类的作用域嵌套在基类之内 Bulk_quote bu 阅读全文
posted @ 2022-03-03 13:32 Miaops 阅读(906) 评论(3) 推荐(0)
摘要: 14.8.0 引入 函数对象 我们可以重载类类型的函数调用运算符,进而像使用函数一样使用这个类 那么这个类既可以存储状态,又可以当函数使用,十分灵活 //定义一个类,让它起到一个求绝对值函数的作用 struct absInt{ int operator()(int val) const { retu 阅读全文
posted @ 2022-03-02 14:08 Miaops 阅读(188) 评论(0) 推荐(0)
摘要: 一般设置为成员函数 定义前置递增递减 定义后置递增递减 后置先记录对象 然后用前置实现后置 阅读全文
posted @ 2022-03-02 14:07 Miaops 阅读(41) 评论(0) 推荐(0)
摘要: 目标代码 本节重在理解下述的代码,尤其是->的返回值 class StrBlobPtr{ public : string& operator*() const{ auto p = check(curr, "dereference past end"); return (*p)[curr]; //*p 阅读全文
posted @ 2022-03-02 14:07 Miaops 阅读(48) 评论(0) 推荐(0)
摘要: 在13.1节中已经介绍过赋值运算符的编写,再次不再赘述,主要强调三个原则 参数:const引用 返回值:左侧对象引用 步骤:拷贝参数对象,释放左对象,更新左对象。【处理自赋值】 用初始化列表initializer_list来赋值 和拷贝赋值及移动赋值运算符一样,其他重载的赋值运算符也必须先释放当前内 阅读全文
posted @ 2022-03-02 14:06 Miaops 阅读(33) 评论(0) 推荐(0)
摘要: 表示容器的类通常可以通过元素在容器中的位置访问元素,这些类一般会定义下标运算符operator[]。 下标运算符必须是成员函数。 为了与下标的原始定义兼容,下标运算符通常以所访问元素的引用作为返回值,这样做的好处是下标可以出现在赋值运算符的任意一端。进一步,我们最好同时定义下标运算符的常量版本和非常 阅读全文
posted @ 2022-03-02 14:06 Miaops 阅读(186) 评论(0) 推荐(0)
摘要: 14.3.0 基本介绍 通常情况下,我们把算术和关系运算符定义成非成员函数以允许对左侧或右侧的运算对象进行转换(参见14.1节,第492页)。 参数:常量引用。因为这些运算符一般不需要改变运算对象的状态,所以形参都是常量的引用。 返回值:值返回。算术运算符通常会计算它的两个运算对象并得到一个新值,这 阅读全文
posted @ 2022-03-02 14:05 Miaops 阅读(124) 评论(0) 推荐(0)
摘要: 14.2.1 重载输出运算符 参数与返回值 第一个形参:ostream的引用【ostream无法复制】 第二个新参:常量引用【避免复制对象】 返回:ostream的引用【链式使用】 Sale_data的输出运算符 ostream& operator<<(ostream &os; const Sale 阅读全文
posted @ 2022-03-02 13:16 Miaops 阅读(83) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 23 下一页