学习模板和集合类的建议
visualc++概念:添加功能
有关选择集合类的建议
本文提供详细信息,以帮助您选择适于特定应用程序需要的集合类。集合类的选择取决于许多因素,包括:
。。。。。
类形状的特性:排序、索引和性能,如本主题稍后介绍的集合形状特性表所示类是否使用c++模板
存储在集合中的元素是否可以序列化存储在集合中的元素是否可以转储以用于诊断集合是否是类型安全的
下表集合形状特性总结了可用集合形状的特性。
。
第2列和第3列描述了每个形状的排序和访问特性。在表中,术语“已排序”表示按插入或删除项的顺序确定项在集合中的顺序,而不是指项按其内容排序。术语“已索引”表示集合中的项可以通过整数索引检索,这和典型数组中的项很相似。
。
第4列和第5列描述了每个形状的性能。在需要对集合执行多次插入操作的应用程序中,插入速度可能特别重要;而对于其他应用程序,查找速度可能更重要。
。
第6列描述了每个形状是否允许重复元素。
集合形状特性
形状列表数组映射已排序。是是否已索引。否按整数按键插入元素搜索指定元素快慢快慢慢快重复元素。是是否(键)是(值)下表mfc集合类的特性总结了特定mfc集合类的其他重要特性,可以作为选择原则。您的选择可能取决于特定的因素,如类是否基于c++模板,它的元素是否可以通过mfc的文档序列化机制序列化,它的元素是否可以通过mfc诊断转储机制转储,类是否是类型安全的,即是否可以保证存储在基于类的集合中和从该集合中检索的元素类型。mfc集合类的特性
类carraycbytearraycdwordarrayclist使用c++模板是否否是可以序列化是1是是是1可以转储是1是是是1类型安全否是3是3否cmapcmapptrtoptrcmapptrtowordcmapstringtoobcmapstringtoptr是否否否否是1否否是否是是否是是否否是是取决于类型2取决于类型2取决于类型2否是是1是是是是是是是是是是是是是是是是是是否否否否否是3否否否否否否是3是3是是是是3是3cmapstringtostring否cmapwordtoobcmapwordtoptrcobarraycoblistcptrarraycptrlistcstringarraycstringlistctypedptrarrayctypedptrlistctypedptrmapcuintarraycwordarray
否否否否否否否否是是是否否1.若要序列化,必须显式调用集合对象的serialize函数;若要转储,必须显式调用集合对象的dump函数。不能用armymap1;cmap
(未完,全文共3366字,当前显示1092字)
(请认真阅读下面的提示信息)