﻿<?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++博客-坚持到底就是胜利-随笔分类-EssentialC++</title><link>http://www.cppblog.com/ailab/category/2028.html</link><description>用心去做好这件事情</description><language>zh-cn</language><lastBuildDate>Tue, 20 May 2008 00:22:53 GMT</lastBuildDate><pubDate>Tue, 20 May 2008 00:22:53 GMT</pubDate><ttl>60</ttl><item><title>const类对象</title><link>http://www.cppblog.com/ailab/archive/2006/06/29/9201.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Thu, 29 Jun 2006 14:19:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/29/9201.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/9201.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/29/9201.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/9201.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/9201.html</trackback:ping><description><![CDATA[在写程序时，就遇到了这种情况，“只能对const对象调用const 成员函数”<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_12_119_Open_Image" onclick="this.style.display='none'; Codehighlighter1_12_119_Open_Text.style.display='none'; Codehighlighter1_12_119_Closed_Image.style.display='inline'; Codehighlighter1_12_119_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_12_119_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_12_119_Closed_Text.style.display='none'; Codehighlighter1_12_119_Open_Image.style.display='inline'; Codehighlighter1_12_119_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> nocopy</span><span id="Codehighlighter1_12_119_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_12_119_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br /><img id="Codehighlighter1_54_55_Open_Image" onclick="this.style.display='none'; Codehighlighter1_54_55_Open_Text.style.display='none'; Codehighlighter1_54_55_Closed_Image.style.display='inline'; Codehighlighter1_54_55_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_54_55_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_54_55_Closed_Text.style.display='none'; Codehighlighter1_54_55_Open_Image.style.display='inline'; Codehighlighter1_54_55_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> nocopy(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> value):_value(value)</span><span id="Codehighlighter1_54_55_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_54_55_Open_Text"><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_80_95_Open_Image" onclick="this.style.display='none'; Codehighlighter1_80_95_Open_Text.style.display='none'; Codehighlighter1_80_95_Closed_Image.style.display='inline'; Codehighlighter1_80_95_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_80_95_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_80_95_Closed_Text.style.display='none'; Codehighlighter1_80_95_Open_Image.style.display='inline'; Codehighlighter1_80_95_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> get_value() </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_80_95_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_80_95_Open_Text"><span style="COLOR: #000000">{</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> _value;}</span></span><span style="COLOR: #000000"><br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> _value;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> fun(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> nocopy </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">rhs)<br /><img id="Codehighlighter1_151_171_Open_Image" onclick="this.style.display='none'; Codehighlighter1_151_171_Open_Text.style.display='none'; Codehighlighter1_151_171_Closed_Image.style.display='inline'; Codehighlighter1_151_171_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_151_171_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_151_171_Closed_Text.style.display='none'; Codehighlighter1_151_171_Open_Image.style.display='inline'; Codehighlighter1_151_171_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_151_171_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_151_171_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /> rhs.get_value();<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"><br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span></div>如果把const去掉，就出现错误，再说明另外一点，为什么使用引用？是因为这样做，不会再调用copy operator，效率高。。。<br /><img src ="http://www.cppblog.com/ailab/aggbug/9201.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-29 22:19 <a href="http://www.cppblog.com/ailab/archive/2006/06/29/9201.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>reference to pointer</title><link>http://www.cppblog.com/ailab/archive/2006/06/28/9128.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Wed, 28 Jun 2006 12:47:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/28/9128.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/9128.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/28/9128.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/9128.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/9128.html</trackback:ping><description><![CDATA[  第六章其中讲到一个二叉排序树的问题，其中使用了reference to pointer,这<br /><br />个技术很有用，我今天做这个实验的时候，就彻底用了一把。<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> my_malloc(</span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">**</span><span style="COLOR: #000000">p)<br /><img id="Codehighlighter1_25_66_Open_Image" onclick="this.style.display='none'; Codehighlighter1_25_66_Open_Text.style.display='none'; Codehighlighter1_25_66_Closed_Image.style.display='inline'; Codehighlighter1_25_66_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_25_66_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_25_66_Closed_Text.style.display='none'; Codehighlighter1_25_66_Open_Image.style.display='inline'; Codehighlighter1_25_66_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_25_66_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_25_66_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">p </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> ( </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">)calloc(</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">),</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"><br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">str </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> NULL;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />my_malloc(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">str);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />strcpy(str,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">hello</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);</span></div>还有在创建二叉排序树的时候，也非常有用，<br /><br />编程实在是王道，要不停地去编程，发现问题，解决问题，提高。。。<img src ="http://www.cppblog.com/ailab/aggbug/9128.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-28 20:47 <a href="http://www.cppblog.com/ailab/archive/2006/06/28/9128.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>说明</title><link>http://www.cppblog.com/ailab/archive/2006/06/23/8902.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Fri, 23 Jun 2006 12:01:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/23/8902.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/8902.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/23/8902.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/8902.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/8902.html</trackback:ping><description><![CDATA[这几天没来这里，并不代表我没有看C++，我仍然按计划在进行，也就是今天，我完成了第五章的阅读，剩下的这两天，主要是上机实践，这样周一就可以看第六章，一定要按计划在7月份前高质量把书看完做完。。。<img src ="http://www.cppblog.com/ailab/aggbug/8902.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-23 20:01 <a href="http://www.cppblog.com/ailab/archive/2006/06/23/8902.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>今天体会</title><link>http://www.cppblog.com/ailab/archive/2006/06/16/8646.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Fri, 16 Jun 2006 11:37:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/16/8646.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/8646.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/16/8646.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/8646.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/8646.html</trackback:ping><description><![CDATA[      上篇是我写的一个关于matrix的类，实现了任意指定行和列，已经基本的运算“+,-,*”，还有拷贝赋值操作，应该可以满足基本的要求。遇到的问题：<br />在写拷贝赋值等函数的时候，由于丢掉了 &amp; 
<div align="center"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">matrix</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">operator</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> matrix </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">rhs);</span></div></div>结果导致了在析构函数无法正常完成，表现的现象free_dbg这个地方出问题，再者，还有地址无法访问，这个其实是由于没有新开空间，我就直接赋值了，所以出现了这个问题。<br /><br />   在copy assignment operator这个函数的时候，一定要删除掉原来的空间，然后new一个空间，再赋值过去。<br />  在copy constructor的时候，只要new一个就可以了。<br />这其实都是对于class内有配置动态内存，需要重写这两个函数。。<br /><div align="center"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">matrix(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> matrix </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">rhs);</span></div></div><div align="left"><br />一切还都是计划进行，第四章还剩下一个关于指针函数的问题，明天搞定，然后18号就按计划进入第15章，还是老话：写程序才能发现问题</div><img src ="http://www.cppblog.com/ailab/aggbug/8646.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-16 19:37 <a href="http://www.cppblog.com/ailab/archive/2006/06/16/8646.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>matrix class</title><link>http://www.cppblog.com/ailab/archive/2006/06/16/8641.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Fri, 16 Jun 2006 08:32:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/16/8641.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/8641.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/16/8641.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/8641.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/8641.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1								//				  2006.06.13  MCRC  																		  2																		#include				&lt;				iostream				&gt;																		  3										#include				&lt;...&nbsp;&nbsp;<a href='http://www.cppblog.com/ailab/archive/2006/06/16/8641.html'>阅读全文</a><img src ="http://www.cppblog.com/ailab/aggbug/8641.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-16 16:32 <a href="http://www.cppblog.com/ailab/archive/2006/06/16/8641.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>friend</title><link>http://www.cppblog.com/ailab/archive/2006/06/15/8611.html</link><dc:creator>ailab</dc:creator><author>ailab</author><pubDate>Thu, 15 Jun 2006 13:59:00 GMT</pubDate><guid>http://www.cppblog.com/ailab/archive/2006/06/15/8611.html</guid><wfw:comment>http://www.cppblog.com/ailab/comments/8611.html</wfw:comment><comments>http://www.cppblog.com/ailab/archive/2006/06/15/8611.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ailab/comments/commentRss/8611.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ailab/services/trackbacks/8611.html</trackback:ping><description><![CDATA[因为到17号的计划是把chapter4读完，且上机实践的，所以这两天主要是上机，实践中会发现很多问题的，今天关键是friend ，它把两个类的联系在了一起，使一个类可以访问另外一个类的私有成员。比如现在的Triangular和Triangular_iterator,由于第二个类要访问第一个类的私有成员，所以 
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span><img id="Codehighlighter1_25_78_Open_Image" onclick="this.style.display='none'; Codehighlighter1_25_78_Open_Text.style.display='none'; Codehighlighter1_25_78_Closed_Image.style.display='inline'; Codehighlighter1_25_78_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_25_78_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_25_78_Closed_Text.style.display='none'; Codehighlighter1_25_78_Open_Image.style.display='inline'; Codehighlighter1_25_78_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Triangular_iterator</span><span id="Codehighlighter1_25_78_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_25_78_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080"> 2</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br /></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> Triangular_iterator::</span><span style="COLOR: #0000ff">operator</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">() ；<br /></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><img src="http://www.cppblog.com/images/dot.gif" /><br /></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img id="Codehighlighter1_98_157_Open_Image" onclick="this.style.display='none'; Codehighlighter1_98_157_Open_Text.style.display='none'; Codehighlighter1_98_157_Closed_Image.style.display='inline'; Codehighlighter1_98_157_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_98_157_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_98_157_Closed_Text.style.display='none'; Codehighlighter1_98_157_Open_Image.style.display='inline'; Codehighlighter1_98_157_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Triangular</span><span id="Codehighlighter1_98_157_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/images/dot.gif" /></span><span id="Codehighlighter1_98_157_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />friend </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> Triangular_iterator::</span><span style="COLOR: #0000ff">operator</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">() </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><img src="http://www.cppblog.com/images/dot.gif" />..<br /></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span></div>这样，Triangular_iterator::operator*() const就可以访问类Triangular中的私有成员变量了，当然了，其实也可以通过使用static 函数来实现这样的访问，因为static做到了与对象无关。。<br /> <br />    今天还有非成员变量函数没有搞定。。。<img src ="http://www.cppblog.com/ailab/aggbug/8611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ailab/" target="_blank">ailab</a> 2006-06-15 21:59 <a href="http://www.cppblog.com/ailab/archive/2006/06/15/8611.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>