﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-探丫头</title><link>http://www.cppblog.com/rosinahua/</link><description>一朝春尽红颜老，花落人亡两不知||寒塘渡鹤影，冷月葬花魂</description><language>zh-cn</language><lastBuildDate>Mon, 09 Mar 2026 03:11:51 GMT</lastBuildDate><pubDate>Mon, 09 Mar 2026 03:11:51 GMT</pubDate><ttl>60</ttl><item><title>第6章 可以工作的类（3）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/28/33075.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Fri, 28 Sep 2007 01:21:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/28/33075.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/33075.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/28/33075.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/33075.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/33075.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 给类定义合理的接口，对于创建高质量程序起到了关键作用。然而，类内部的设计和实现也同样重要。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/28/33075.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/33075.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-28 09:21 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/28/33075.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第6章 可以工作的类（2）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/26/32880.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Wed, 26 Sep 2007 01:16:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/26/32880.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32880.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/26/32880.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32880.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32880.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 创建高质量的类，第一步，也可能是最重要的一步，就是创建一个好的接口，这也包括了创建一个可以通过接口来展现的合理的抽象，并确保细节仍被隐藏在抽象背后。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/26/32880.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32880.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-26 09:16 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/26/32880.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第6章 可以工作的类（1）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/25/32824.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Tue, 25 Sep 2007 00:56:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/25/32824.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32824.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/25/32824.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32824.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32824.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 抽象数据类型（ADT）是指一些数据以及对这些数据所进行的操作的集合，这些操作既向程序的其余部分描述了这些数据是怎么样的，也允许程序的其余部分改变这些数据。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/25/32824.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32824.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-25 08:56 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/25/32824.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第5章 软件构建中的设计（3）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/24/32761.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Mon, 24 Sep 2007 01:03:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/24/32761.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32761.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/24/32761.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32761.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32761.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 由于软件设计是非确定性的，因此，灵活熟练的运用一组有效的启发式方法（试探法），便成了合理的软件设计的核心工作。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/24/32761.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32761.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-24 09:03 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/24/32761.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第5章 软件构建中的设计（2）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/20/32520.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Thu, 20 Sep 2007 01:36:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/20/32520.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32520.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/20/32520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32520.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32520.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 好的设计源于对一小批关键设计概念的理解。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/20/32520.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-20 09:36 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/20/32520.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第5章 软件构建中的设计（1）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/19/32478.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Wed, 19 Sep 2007 06:32:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/19/32478.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32478.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/19/32478.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32478.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32478.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 设计中的挑战——设计一词意味着去创造、构思和发明一套解决方案，把一份计算机软件的规格书要求转变为可实际运行的软件。设计就是把需求分析和编码调试连在一起的活动。好的高层次设计可以提供一个可以稳妥的容纳多个较低层次设计的结构。好的设计对小型项目非常有用，对大型项目更是不可缺少。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/19/32478.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32478.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-19 14:32 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/19/32478.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第4章 关键的“构建”决策</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/18/32406.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Tue, 18 Sep 2007 02:25:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/18/32406.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32406.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/18/32406.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32406.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32406.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 程序员和技术带头个人必须做的准备工作。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/18/32406.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32406.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-18 10:25 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/18/32406.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第3章 三思而后行：前期准备（2）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/18/32399.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Tue, 18 Sep 2007 02:05:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/18/32399.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32399.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/18/32399.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32399.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32399.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 使用高质量的实践方法是那些创造高质量软件的程序员的共性&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/18/32399.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32399.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-18 10:05 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/18/32399.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第3章 三思而后行：前期准备（1）</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/18/32394.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Tue, 18 Sep 2007 00:44:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/18/32394.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32394.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/18/32394.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32394.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32394.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 使用高质量的软件实践方法是那些能够创造高质量软件的程序员的共性。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/18/32394.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32394.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-18 08:44 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/18/32394.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第2章 用隐喻更充分的理解软件开发</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/13/32125.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Thu, 13 Sep 2007 06:00:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/13/32125.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32125.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/13/32125.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32125.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32125.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 使用隐喻可以使你对软件开发的过程有更深刻的理解。。。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/13/32125.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32125.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-13 14:00 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/13/32125.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第1章 欢迎进入软件构建的世界</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/13/32101.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Thu, 13 Sep 2007 01:47:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/13/32101.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32101.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/13/32101.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32101.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32101.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 构建活动主要是编码和调试，但也涉及到详细涉及，规划构建，单元测试，集成和集成测试等其他活动。&nbsp;&nbsp;<a href='http://www.cppblog.com/rosinahua/archive/2007/09/13/32101.html'>阅读全文</a><img src ="http://www.cppblog.com/rosinahua/aggbug/32101.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-13 09:47 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/13/32101.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>项目完成后体会</title><link>http://www.cppblog.com/rosinahua/archive/2007/09/12/32050.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Wed, 12 Sep 2007 07:45:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/09/12/32050.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/32050.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/09/12/32050.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/32050.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/32050.html</trackback:ping><description><![CDATA[    通过这次项目的开发，又让我认识到很多问题。总结如下：<br />    1、很多时候不是说你要采用多么高明的技术，而是看你如何思考一个问题，采用什么样的思维方式，而这样的思维方式取决于你对操作系统的认识，因此深入了解操作系统，会对自己的开发很有帮助。<br />    2、开发语言的灵活运用。很多时候语言的一些特色，也能有力的帮助你完成一项看似很难办到的事情。因此熟练的掌握语言特性，也似有必要的。<br />    3、认识到自己存在很多很多的缺陷<br />         （1）没有大局观：老是沉溺于自己喜欢的技术，或者产品的核心技术，老是希望自己能力挽狂澜，其实仔细想想，协调好整个项目组的工作或许效率会更高，这应该源于我对别人的不信任吧？其实我自己的水平未必比其他成员高。<br />         （2）基础不够扎实：现在遇到指针的问题就头疼，遇到分析字符串的问题就慌，不管看过多少语言的书，不管看过多少语法的书，这个问题始终没有解决。虽然我尽量避免指针，尽量避免直接用C字符数足，可是一些时候是难免的，尤其是不用MFC的工成中。<br />         （3）工作不是很主动，老是被动的接受领导的任务，在拿到一个产品的需求的时候没有做一定的分析工作，比如上网查看其它公司特别是对手公司是否有同类产品，有什么特色。<br />    希望自己以后能进一步学习，提高自己的技术水平的同时，注意培养自己的组织协调能力，使得以后的工作更加得心应手，称心如意。<img src ="http://www.cppblog.com/rosinahua/aggbug/32050.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-09-12 15:45 <a href="http://www.cppblog.com/rosinahua/archive/2007/09/12/32050.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>亲爱的朋友们，我回来了</title><link>http://www.cppblog.com/rosinahua/archive/2007/08/08/29543.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Wed, 08 Aug 2007 00:48:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/08/08/29543.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/29543.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/08/08/29543.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/29543.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/29543.html</trackback:ping><description><![CDATA[    很长一段时间，我放弃了自己的追求和理想，置身于红楼梦的婉转故事中，我迷失了自己。一度的认为编程不能给我带来经济上的改变，决定放弃编程。<br />    可是我发现我错了，因为我发现，我彻彻底底的被编程给捆住了，离开编程，离开软件，一无是处，只能“将错就错”的继续发展下去了。<br />    我还会继续的总结自己的经验，学习别人的文章，重新回答这个队伍中，我欢呼雀跃，现在的我兴奋，轻松，自在，前行的路一定会越走越宽，越走越平坦。<img src ="http://www.cppblog.com/rosinahua/aggbug/29543.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-08-08 08:48 <a href="http://www.cppblog.com/rosinahua/archive/2007/08/08/29543.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>思考</title><link>http://www.cppblog.com/rosinahua/archive/2007/06/19/26630.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Tue, 19 Jun 2007 08:15:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/06/19/26630.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/26630.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/06/19/26630.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/26630.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/26630.html</trackback:ping><description><![CDATA[    说起编程，其实我不是对某个领域感兴趣，而是对C++的很多奥秘和灵巧的设计所吸引，相比，我更喜欢C++这个语言本身，而不是用他去做某个业务领域的东西。<br />    图形图像、人工智能、信息安全、网络编程、嵌入式、手机编程，这些都是一些很广的应用领域，可是我对什么感兴趣呢，好像都不，我也不知道自己想要发展成什么样子，大家都是怎么过来的呢？又是如何选择的呢？<br />    哪位过来人能介绍下你的心路历程和学习经历，还有经验？<img src ="http://www.cppblog.com/rosinahua/aggbug/26630.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-06-19 16:15 <a href="http://www.cppblog.com/rosinahua/archive/2007/06/19/26630.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>迭代器的分类</title><link>http://www.cppblog.com/rosinahua/archive/2007/06/13/26227.html</link><dc:creator>探丫头</dc:creator><author>探丫头</author><pubDate>Wed, 13 Jun 2007 00:42:00 GMT</pubDate><guid>http://www.cppblog.com/rosinahua/archive/2007/06/13/26227.html</guid><wfw:comment>http://www.cppblog.com/rosinahua/comments/26227.html</wfw:comment><comments>http://www.cppblog.com/rosinahua/archive/2007/06/13/26227.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/rosinahua/comments/commentRss/26227.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/rosinahua/services/trackbacks/26227.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 昨天看迭代器看的迷迷糊糊，主要是对分类搞不清楚，为什么这样分，每种迭代器有什么不同？经老公的提醒，在《C++编程思想》第二卷看到如下的解释，拿来与大家共享。<br>&nbsp;&nbsp;&nbsp; 1、输入迭代器：只读，一次传递<br>&nbsp;&nbsp;&nbsp; 为输入迭代器预定义实现只有istream_iterator和istreambuf_iterator，用于从一个输入流istream中读取。一个输入迭代器仅能对它所选择的每个元素进行一次解析，它们只能向前移动。一个专门的构造函数定义了超越末尾的值。总是，输入迭代器可以对读操作的结果进行解析（对每个值仅解析一次），然后向前移动。<br>&nbsp;&nbsp;&nbsp; 2、输出迭代器：只写，一次传递<br>&nbsp;&nbsp;&nbsp; 这是对输入迭代器的补充，不过是写操作而不是读操作。为输出迭代器的预定义实现只有ostream_iterator和ostreambuf_iterator，用于向一个输出流ostream写数据，还有一个一般较少使用的raw_storage_iterator。他们只能对每个写出的值进行一次解析，并且只能向前移动。对于输出迭代器来说，没有使用超越末尾的值来结束的概念。总之，输出迭代器可以对写操作的值进行解析（对每一个值仅解析一次），然后向前移动。<br>&nbsp;&nbsp;&nbsp; 3、前向迭代器：多次读/写<br>&nbsp;&nbsp;&nbsp; 前向迭代器包含了输入和输出迭代器两者的功能，加上还可以多次解析一个迭代器指定的位置，因此可以对一个值进行多次读/写。顾名思义，前向迭代器只能向前移动。没有为前向迭代器预定义迭代器。<br>&nbsp;&nbsp;&nbsp; 4、双向迭代器：operator--<br>&nbsp;&nbsp;&nbsp; 双向迭代器具有前向迭代器的全部功能。另外它还可以利用自减操作符operator--向后一次移动一个位置。由list容器中返回的迭代器都是双向的。<br>&nbsp;&nbsp;&nbsp; 5、随机访问迭代器：类似于一个指针<br>&nbsp;&nbsp;&nbsp; 随机访问迭代器具有双向迭代器的所有功能，再加上一个指针所有的功能（一个指针就是一个随机访问迭代器），除了没有一种&#8220;空（null）&#8221;迭代器和空指针对应。基本上可以这样说，一个随机访问迭代器就像一个指针那样可以进行任何操作，包括使用操作符operator[]进行索引，加某个数值到一个指针就可以向前或者向后移动若干个位置，或者使用比较运算符在迭代器之间进行比较。 
<img src ="http://www.cppblog.com/rosinahua/aggbug/26227.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/rosinahua/" target="_blank">探丫头</a> 2007-06-13 08:42 <a href="http://www.cppblog.com/rosinahua/archive/2007/06/13/26227.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>