使用Properties类带来的好处(第二部分)

ZDNet软件频道 时间:2003-02-24 作者:BUILDER.COM |  我要评论()
本文关键词:cpptips
本文的第一部分介绍了file_reader_writer类。在这部分,我们将向你介绍basic_properties类以及如何用它以及我们非常熟悉的运算符‘>>’和‘<<’来保存数据。basic_properties类在内部使用一个名字为ReaderWriter的底层类,不过它的公共接口与file_reader_writer类相同。

本文的第一部分介绍了file_reader_writer类。在这部分,我们将向你介绍basic_properties类以及如何用它以及我们非常熟悉的运算符‘>>’和‘<<’来保存数据。basic_properties类在内部使用一个名字为ReaderWriter的底层类,不过它的公共接口与file_reader_writer类相同。

你可以创建自己的ReaderWriter类,它要提供如下的功能:

  • char_type类型定义
  • save、has_property、get_property、set_property、get_property_comment以及set_property_comment 函数

basic_properties类,你就可以持久保存任何其基础类型已定义了‘>>’和‘<<’运算符的变量,你可以直接使用basic_properties。为了方面,我们提供了propertieswproperties(类型定义,内在使用了file_reader_writer<char/wchar_t>

你可以用basic_properties类来持久保存类或者结构。在持久保存数据之前,你需要已经有一个存放这些数据的结构。之所以这么要求是因为运算符‘>>’和‘<<’需要运算对象。下面是一个例子:

正如你在本文的第一部分所看到的那样,为了得到以及设置属性,ReaderWriter类需要知道属性的名字。因此,我们创建了named_property< type>类,它的作用和类型相同,不过它还有一个名字(属性的名字),这个名字可以用函数set_name来设置、用get_name获取。

basic_properties类允许获取/设置任何属性。对一个变量来说,为了让它可以被获取和设置,你应该在named_property中处理该变量的类型。然后,在构造函数中,确保设置要持久保存的属性的名字,如下所示:


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134