C++ 类
定义类相关的非成员函数
如上篇文章中add、read、print等,尽管这些函数定义的操作从概念上来说属于类的接口的组成部分,但他们实际上不属于类本身。
我们通常把函数的声明和定义分离开,如果函数在概念上属于类但是不定义在类中,则他一般应和类声明(而非定义)在同一个头文件中,这样用户使用接口的任何部分只需引入一个文件。
定义read和print函数
read函数从给定流中将数据读到给定的对象里,print函数将给定对象的内容打印到给定流中。
还有两点比较重要
1read和print分别受一个各自IO类型的引用作为参数,这是因为IO类属于不可被拷贝的类,因此只能通过引用来传递他们。而且读取和写入会改变流的内容,所以两个都不是常量引用。
2print函数不负责换行。一般来说执行输出任务的函数应该尽量减少对格式的控制,这样可以让用户确保是否换行。
使用这两个函数。

定义add函数
add函数接受两个Sales_data对象作为参数,返回值是一个新的Sales_data用来表示前两个对象的和。
其实add函数就是combine函数。只不过combine是成员函数而add不是。

