上传新文件

上级 0ad13c66
//程序说明
/*
* 对于该程序,最重要的一点是,参数os (其类型为ostream &)
可以指向ostream对象(如 cout),也可以指向ofstream对象(如fout)。
该程序还演示了如何使用ostream类中的格式化方法。
下面复习(介绍)其中的一些,更详细的讨论请参阅第17章。
*/
/*
* 方法setf()让您能够设置各种格式化状态。
例如,方法调用setf(ios_base:fixed)将对象置于使用定点表示法的模式;
setf(ios_base:.showpoint)将对象置于显示小数点的模式,
即使小数部分为零。方法 precision()指定显示多少位小数
(假定对象处于定点模式下)。所有这些设置都将一直保持不变,
直到再次调用相应的方法重新设置它们。
方法width()设置下一次输出操作使用的字段宽度,
这种设置只在显示下一个值时有效,然后将恢复到默认设置。
默认的字段宽度为零,这意味着刚好能容纳下要显示的内容。
*/
//函数file_it()使用了两个有趣的方法调用:
ios_base::fmtflags initial;
initial = os.setf(ios_base::fixed);//save initial formatting state
...
os.setf(initial); //restore initial formatting state
/*
* 方法 setf()返回调用它之前有效的所有格式化设置。
* ios_base:.fmtflags是存储这种信息所需的数据类型名称。
因此,将返回值赋给initial将存储调用file_it()之前的格式化设置,
然后便可以使用变量initial作为参数来调用setf(),
将所有的格式化设置恢复到原来的值。
因此,该函数将对象回到传递给file_it()之前的状态。
*/
/*
* 了解更多有关类的知识将有助于更好地理解这些方法的工作原理,
以及为何在代码中使用ios_base。然而,您不用等到第17章才使用这些方法。
需要说明的最后一点是,每个对象都存储了自己的格式化设置。
因此,当程序将cout传递给file_it()时,cout 的设置将被修改,
然后被恢复;当程序将fout传递给file_it()时,fout 的设置将被修改,
然后被恢复。
*/
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册