且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《C++面向对象高效编程(第2版)》——2.17 程序示例

更新时间:2022-06-15 01:28:41

本节书摘来自异步社区出版社《C++面向对象高效编程(第2版)》一书中的第章,第2.17节,作者: 【美】Kayshav Dattatri,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.17 程序示例

C++面向对象高效编程(第2版)
以下示例为TInt类的测试程序。代码仅为了程序的完整,并无实际意义。

#include "Int.h"
main()
{
  TInt hugeNumber(100, 2000); // 创建一个TInt ①
  TInt normalNumber(1000); // 另一个TInt ②
  TInt sum;
  // 发送消息打印hugeNumber
  // 设置this指针指向hugeNubmer
  hugeNumber.Print(); // ③
  // 改变hugeNumber 的符号
  hugeNumber.FlipSign(); // ④
   // 再次打印
  hugeNumber.Print();
   // hugeNumber与normalNumber相加,计算结果储存至sum中
  // sum = hugeNumber + normalNumber语句解释为:
  // (1)通过hugeNumber调用+操作符函数,将normalNumber作为参数传递
  // (2)通过sum调用赋值操作符(=操作符),将(1)计算的结果作为参数传递
  // sum.operator=( hugeNumber.operator+(normalNumber) );
   sum = hugeNumber + normalNumber; // ⑤
  // 打印结果,即通过sum调用print()
  sum.Print();
}```
① 该步骤创建一个TInt类对象,并规定了有效数字的范围。在这里,将调用TInt类提供的配匹构造函数。

② 该步骤只利用一个整数参数创建了另一个TInt对象。在这里,将调用TInt类中接受一个整数参数的构造函数。

③ 该步骤通过对象hugeNumber调用成员函数,使用常用的“对象.函数”的句法。

④ 该步骤改变hugeNumber的符号,通过FlipSign成员函数完成。