﻿<?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++博客-天之道-随笔分类-C++</title><link>http://www.cppblog.com/zhenglinbo/category/17794.html</link><description>享受编程的乐趣。</description><language>zh-cn</language><lastBuildDate>Thu, 28 Feb 2013 16:29:08 GMT</lastBuildDate><pubDate>Thu, 28 Feb 2013 16:29:08 GMT</pubDate><ttl>60</ttl><item><title>C++以定点形式显示浮点数和设置小数部分的有效数字</title><link>http://www.cppblog.com/zhenglinbo/archive/2013/02/28/198145.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Thu, 28 Feb 2013 13:55:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2013/02/28/198145.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/198145.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2013/02/28/198145.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/198145.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/198145.html</trackback:ping><description><![CDATA[cout.setf(ios::fixed); //以定点形式显示浮点数<br /><br />cout.precision(4); //设置小数部分的4位有效数字<img src ="http://www.cppblog.com/zhenglinbo/aggbug/198145.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2013-02-28 21:55 <a href="http://www.cppblog.com/zhenglinbo/archive/2013/02/28/198145.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>最全的C++ map的使用</title><link>http://www.cppblog.com/zhenglinbo/archive/2012/09/25/191984.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Tue, 25 Sep 2012 11:56:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2012/09/25/191984.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/191984.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2012/09/25/191984.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/191984.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/191984.html</trackback:ping><description><![CDATA[<div><span style="font-size: 12px;">&nbsp;Map是c++的一个标准容器，她提供了很好一对一的关系，在一些程序中建立一个map可以起到事半功倍的效果，总结了一些map基本简单实用的操作！</span></div><div><span style="font-size: 12px;">1. map最基本的构造函数；</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;string , int &gt;mapstring; &nbsp; &nbsp; &nbsp; &nbsp; map&lt;int ,string &gt;mapint;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;sring, char&gt;mapstring; &nbsp; &nbsp; &nbsp; &nbsp; map&lt; char ,string&gt;mapchar;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;char ,int&gt;mapchar; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;map&lt;int ,char &gt;mapint；</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">2. map添加数据；</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;int ,string&gt; maplive; &nbsp;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;1.maplive.insert(pair&lt;int,string&gt;(102,"aclive"));</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;2.maplive.insert(map&lt;int,string&gt;::value_type(321,"hai"));</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;3, maplive[112]="April";//map中最简单最常用的插入添加！</span></div><div><span style="font-size: 12px;">3，map中元素的查找：</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;find()函数返回一个迭代器指向键值为key的元素，如果没找到就返回指向map尾部的迭代器。 &nbsp; &nbsp; &nbsp; &nbsp;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;int ,string &gt;::iterator l_it;;&nbsp;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;l_it=maplive.find(112);</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;if(l_it==maplive.end())</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cout&lt;&lt;"we do not find 112"&lt;&lt;endl;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;else cout&lt;&lt;"wo find 112"&lt;&lt;endl;</span></div><div><span style="font-size: 12px;">4,map中元素的删除：</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;如果删除112；</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map&lt;int ,string &gt;::iterator l_it;;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;l_it=maplive.find(112);</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;if(l_it==maplive.end())</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; &nbsp; cout&lt;&lt;"we do not find 112"&lt;&lt;endl;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;else &nbsp;maplive.erase(l_it); &nbsp;//delete 112;</span></div><div><span style="font-size: 12px;">5,map中 swap的用法：</span></div><div><span style="font-size: 12px;">&nbsp; Map中的swap不是一个容器中的元素交换，而是两个容器交换；</span></div><div><span style="font-size: 12px;">&nbsp; For example：</span></div><div><span style="font-size: 12px;">&nbsp; #include &lt;map&gt;</span></div><div><span style="font-size: 12px;">&nbsp; #include &lt;iostream&gt;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; using namespace std;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; int main( )</span></div><div><span style="font-size: 12px;">&nbsp; {</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; map &lt;int, int&gt; m1, m2, m3;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; map &lt;int, int&gt;::iterator m1_Iter;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m1.insert ( pair &lt;int, int&gt; &nbsp;( 1, 10 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m1.insert ( pair &lt;int, int&gt; &nbsp;( 2, 20 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m1.insert ( pair &lt;int, int&gt; &nbsp;( 3, 30 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m2.insert ( pair &lt;int, int&gt; &nbsp;( 10, 100 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m2.insert ( pair &lt;int, int&gt; &nbsp;( 20, 200 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; m3.insert ( pair &lt;int, int&gt; &nbsp;( 30, 300 ) );</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;cout &lt;&lt; "The original map m1 is:";</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;for ( m1_Iter = m1.begin( ); m1_Iter != m1.end( ); m1_Iter++ )</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &lt;&lt; " " &lt;&lt; m1_Iter-&gt;second;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &nbsp; &lt;&lt; "." &lt;&lt; endl;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;// This is the member function version of swap</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;//m2 is said to be the argument map; m1 the target map</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.swap( m2 );</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;cout &lt;&lt; "After swapping with m2, map m1 is:";</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;for ( m1_Iter = m1.begin( ); m1_Iter != m1.end( ); m1_Iter++ )</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &lt;&lt; " " &lt;&lt; m1_Iter -&gt; second;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &nbsp;&lt;&lt; "." &lt;&lt; endl;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;cout &lt;&lt; "After swapping with m2, map m2 is:";</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;for ( m1_Iter = m2.begin( ); m1_Iter != m2.end( ); m1_Iter++ )</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &lt;&lt; " " &lt;&lt; m1_Iter -&gt; second;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &nbsp;&lt;&lt; "." &lt;&lt; endl;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;// This is the specialized template version of swap</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;swap( m1, m3 );</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;cout &lt;&lt; "After swapping with m3, map m1 is:";</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;for ( m1_Iter = m1.begin( ); m1_Iter != m1.end( ); m1_Iter++ )</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &lt;&lt; " " &lt;&lt; m1_Iter -&gt; second;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &nbsp; &lt;&lt; "." &lt;&lt; endl;</span></div><div><span style="font-size: 12px;">}</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">6.map的sort问题：</span></div><div><span style="font-size: 12px;">&nbsp; Map中的元素是自动按key升序排序,所以不能对map用sort函数：</span></div><div><span style="font-size: 12px;">&nbsp; For example：</span></div><div><span style="font-size: 12px;">&nbsp; #include &lt;map&gt;</span></div><div><span style="font-size: 12px;">&nbsp; #include &lt;iostream&gt;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; using namespace std;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp;int main( )</span></div><div><span style="font-size: 12px;">&nbsp;{</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map &lt;int, int&gt; m1;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;map &lt;int, int&gt;::iterator m1_Iter;</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 1, 20 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 4, 40 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 3, 60 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 2, 50 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 6, 40 ) );</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;m1.insert ( pair &lt;int, int&gt; &nbsp;( 7, 30 ) );</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;cout &lt;&lt; "The original map m1 is:"&lt;&lt;endl;</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp;for ( m1_Iter = m1.begin( ); m1_Iter != m1.end( ); m1_Iter++ )</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; cout &lt;&lt; &nbsp;m1_Iter-&gt;first&lt;&lt;" "&lt;&lt;m1_Iter-&gt;second&lt;&lt;endl;</span></div><div><span style="font-size: 12px;">&nbsp;&nbsp;</span></div><div><span style="font-size: 12px;">}</span></div><div><span style="font-size: 12px;">&nbsp; The original map m1 is:</span></div><div><span style="font-size: 12px;">&nbsp; 1 20</span></div><div><span style="font-size: 12px;">&nbsp; 2 50</span></div><div><span style="font-size: 12px;">&nbsp; 3 60</span></div><div><span style="font-size: 12px;">&nbsp; 4 40</span></div><div><span style="font-size: 12px;">&nbsp; 6 40</span></div><div><span style="font-size: 12px;">&nbsp; 7 30</span></div><div><span style="font-size: 12px;">&nbsp; 请按任意键继续. . .</span></div><div><span style="font-size: 12px;"><br /></span><div>#include &lt;iostream&gt;</div><div>#include &lt;string&gt;</div><div>#include &lt;map&gt;</div><div>using namespace std;</div><div>int main()</div><div>{</div><div>&nbsp; &nbsp; char str[50];</div><div>&nbsp; &nbsp; int count=0;</div><div>&nbsp; &nbsp; map &lt;string,int&gt; counter;</div><div><span style="white-space:pre">	</span>map &lt;string,int&gt; ::iterator it;</div><div>&nbsp; &nbsp; while(gets(str)!=NULL)</div><div>&nbsp; &nbsp; {</div><div>&nbsp; &nbsp; &nbsp; &nbsp; counter[str]++;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; count++;</div><div>&nbsp; &nbsp; }</div><div>&nbsp; &nbsp; for(it=counter.begin();it!=counter.end();it++)</div><div>&nbsp; &nbsp; {</div><div><span style="white-space:pre">		</span>cout&lt;&lt;it-&gt;first&lt;&lt;" "&lt;&lt;it-&gt;second&lt;&lt;endl;</div><div>&nbsp; &nbsp; }</div><div>&nbsp; &nbsp; return 0;</div><div>}<br /></div><div></div></div><div><span style="font-size: 12px;">7， &nbsp; map的基本操作函数：</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; C++ Maps是一种关联式容器，包含&#8220;关键字/值&#8221;对</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; begin() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;返回指向map头部的迭代器</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; clear(） &nbsp; &nbsp; &nbsp; &nbsp; 删除所有元素</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; count() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;返回指定元素出现的次数</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; empty() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;如果map为空则返回true</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; end() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;返回指向map末尾的迭代器</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; equal_range() &nbsp; &nbsp;返回特殊条目的迭代器对</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; erase() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;删除一个元素</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; find() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 查找一个元素</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; get_allocator() &nbsp;返回map的配置器</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; insert() &nbsp; &nbsp; &nbsp; &nbsp; 插入元素</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; key_comp() &nbsp; &nbsp; &nbsp; 返回比较元素key的函数</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; lower_bound() &nbsp; &nbsp;返回键值&gt;=给定元素的第一个位置</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; max_size() &nbsp; &nbsp; &nbsp; 返回可以容纳的最大元素个数</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; rbegin() &nbsp; &nbsp; &nbsp; &nbsp; 返回一个指向map尾部的逆向迭代器</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; rend() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 返回一个指向map头部的逆向迭代器</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; size() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 返回map中元素的个数</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; swap() &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;交换两个map</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; upper_bound() &nbsp; &nbsp; 返回键值&gt;给定元素的第一个位置</span></div><div><span style="font-size: 12px;">&nbsp; &nbsp; &nbsp; value_comp() &nbsp; &nbsp; &nbsp;返回比较元素value的函数</span></div><div><span style="font-size: 12px;"><br /></span></div><div><span style="font-size: 12px; ">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span></div><img src ="http://www.cppblog.com/zhenglinbo/aggbug/191984.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2012-09-25 19:56 <a href="http://www.cppblog.com/zhenglinbo/archive/2012/09/25/191984.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++STL标准库中队列的运用</title><link>http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Tue, 18 Sep 2012 15:12:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/191170.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/191170.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/191170.html</trackback:ping><description><![CDATA[卡片游戏<br /><br />桌上有一叠牌，从第一张牌开始从上往下依次编号1~n。当至少还剩两张牌时进行如下操作：把第一张牌扔掉，然后把新的第一张牌放到整叠牌的最后。输入n，输出每次扔掉的牌，以及最后剩下的牌。<br /><br />样例输入：7<br />样例输出：1 3 5 7 4 2 6<br /><br />代码如下：<br /><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->#include&lt;iostream&gt;<br />#include&lt;queue&gt;<br /><span style="color: #0000FF; ">using</span>&nbsp;<span style="color: #0000FF; ">namespace</span>&nbsp;std;<br />queue&lt;<span style="color: #0000FF; ">int</span>&gt;&nbsp;q;&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">声明队列</span><span style="color: #008000; "><br /></span><span style="color: #0000FF; ">int</span>&nbsp;main()&nbsp;&nbsp;&nbsp;&nbsp;<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">int</span>&nbsp;n;<br />&nbsp;&nbsp;&nbsp;&nbsp;cin&gt;&gt;n;<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">for</span>(<span style="color: #0000FF; ">int</span>&nbsp;i=0;i&lt;n;i++)&nbsp;q.push(i+1);<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">while</span>(!q.empty())<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;q.front()&lt;&lt;"&nbsp;";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.pop();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>(!q.empty()) //此处需要判断此时队列是否为空<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.push(q.front());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.pop();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;0;<br />}</div><img src ="http://www.cppblog.com/zhenglinbo/aggbug/191170.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2012-09-18 23:12 <a href="http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何重载数组下标运算符</title><link>http://www.cppblog.com/zhenglinbo/archive/2012/02/24/166368.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Thu, 23 Feb 2012 16:08:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2012/02/24/166368.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/166368.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2012/02/24/166368.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/166368.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/166368.html</trackback:ping><description><![CDATA[为防止在对数组动态赋值时发生数组越界，C++提供了一种能够解决此问题的方法&#8212;&#8212;重载运算符[]。示例程序：<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">#include</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">iostream</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br /></span><span style="color: #0000FF; ">class</span><span style="color: #000000; ">&nbsp;CArray<br />{<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">public</span><span style="color: #000000; ">:<br />&nbsp;&nbsp;&nbsp;CArray(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;l)<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;length</span><span style="color: #000000; ">=</span><span style="color: #000000; ">l;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Buff</span><span style="color: #000000; ">=</span><span style="color: #0000FF; ">new</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">[length];<br />&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; ">~</span><span style="color: #000000; ">CArray(){delete&nbsp;Buff;}<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;GetLength(){</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;length;}<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">operator</span><span style="color: #000000; ">&nbsp;[](</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;i);<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">private</span><span style="color: #000000; ">:<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;length;<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">Buff;<br />};<br /><br /></span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">&nbsp;CArray::</span><span style="color: #0000FF; ">operator</span><span style="color: #000000; ">[](</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;i)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">static</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;ch</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(i</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">length&nbsp;</span><span style="color: #000000; ">&amp;&amp;</span><span style="color: #000000; ">&nbsp;i</span><span style="color: #000000; ">&gt;=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;Buff[i];<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000; ">"</span><span style="color: #000000; ">\nIndex&nbsp;out&nbsp;of&nbsp;range.</span><span style="color: #000000; ">"</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;ch;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br /></span><span style="color: #0000FF; ">void</span><span style="color: #000000; ">&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;cnt;<br />&nbsp;&nbsp;&nbsp;&nbsp;CArray&nbsp;string1(</span><span style="color: #000000; ">6</span><span style="color: #000000; ">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">string2</span><span style="color: #000000; ">=</span><span style="color: #000000; ">"</span><span style="color: #000000; ">string</span><span style="color: #000000; ">"</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">(cnt</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;cnt</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">string1.GetLength();cnt</span><span style="color: #000000; ">++</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string1[cnt]</span><span style="color: #000000; ">=</span><span style="color: #000000; ">string2[cnt];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000; ">"</span><span style="color: #000000; ">\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">(cnt</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;cnt</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">string1.GetLength();cnt</span><span style="color: #000000; ">++</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000; ">string1[cnt];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000; ">"</span><span style="color: #000000; ">\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000; ">string1.GetLength()</span><span style="color: #000000; ">&lt;&lt;</span><span style="color: #000000;">endl;<br />}<br /></span></div>在重载下标运算符函数时注意：<br />1）该函数只带一个参数，不可带多个参数。<br />2）得重载为友元函数，必须是非static类的成员函数。<br /><img src ="http://www.cppblog.com/zhenglinbo/aggbug/166368.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2012-02-24 00:08 <a href="http://www.cppblog.com/zhenglinbo/archive/2012/02/24/166368.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>判断偶数、奇数、素数和符合哥德巴赫猜想的数（C++实现）</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/11/26/160996.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Sat, 26 Nov 2011 05:38:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/11/26/160996.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/160996.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/11/26/160996.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/160996.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/160996.html</trackback:ping><description><![CDATA[类的实现：<br />
<p>class CNumber<br />{<br />private:<br />&nbsp;int n;<br />public:<br />&nbsp;CNumber(int number)<br />&nbsp;{<br />&nbsp;&nbsp;n=number;<br />&nbsp;}<br />&nbsp;~CNumber(){ }<br />&nbsp;int isEven()<br />&nbsp;{<br />&nbsp;&nbsp;if(n%2==0)<br />&nbsp;&nbsp;&nbsp;return 1;<br />&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;return 0;<br />&nbsp;}<br />&nbsp;<br />&nbsp;int isOdd()<br />&nbsp;{<br />&nbsp;&nbsp;if(n%2!=0)<br />&nbsp;&nbsp;&nbsp;return 1;<br />&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;return 0;<br />&nbsp;}<br />&nbsp;<br />&nbsp;int isPrime()<br />&nbsp;{<br />&nbsp;&nbsp;int i;<br />&nbsp;&nbsp;if(n&lt;1)<br />&nbsp;&nbsp;&nbsp;return 0;<br />&nbsp;&nbsp;for(i=2;i&lt;=sqrt(n);i++)<br />&nbsp;&nbsp;&nbsp;if(n%i==0)<br />&nbsp;&nbsp;&nbsp;&nbsp;return 0;<br />&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 1;<br />&nbsp;&nbsp;return 0;<br />&nbsp;}<br />&nbsp;bool isAPrime(int n)<br />&nbsp;{<br />&nbsp;&nbsp;for(int i=2;i&lt;sqrt(n);i++)<br />&nbsp;&nbsp;&nbsp;if(n%i==0)<br />&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />&nbsp;&nbsp;&nbsp;return true;<br />&nbsp;}<br />&nbsp;<br />&nbsp;int isGoldBach()<br />&nbsp;{<br />&nbsp;&nbsp;int i;<br />&nbsp;&nbsp;int halfnum=n/2;<br />&nbsp;&nbsp;&nbsp;for(i=2;i&lt;=halfnum;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;if(isAPrime(i)&amp;&amp;isAPrime(n-i))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;<br />&nbsp;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;return 0;<br />&nbsp;}</p>
<p>&nbsp;void print()<br />&nbsp;{<br />&nbsp;&nbsp;if(isEven())&nbsp; cout&lt;&lt;"This number is even."&lt;&lt;endl;<br />&nbsp;&nbsp;&nbsp;&nbsp; if(isOdd())&nbsp;&nbsp; cout&lt;&lt;"This number is odd."&lt;&lt;endl;<br />&nbsp;&nbsp;&nbsp;&nbsp; if(isPrime())&nbsp; cout&lt;&lt;"This number is prime."&lt;&lt;endl;<br />&nbsp;&nbsp;&nbsp;&nbsp; if(isGoldBach())&nbsp; cout&lt;&lt;"This number is goldbach."&lt;&lt;endl;<br />&nbsp;}<br />};<br /></p><br />主函数：<br /><br /><font color="#000000" face="Verdana">void main()<br />{<br />&nbsp;int num;<br />&nbsp;cout&lt;&lt;"Please enter one number:"&lt;&lt;endl;<br />&nbsp;cin&gt;&gt;num;<br />&nbsp;CNumber numb(num);<br />&nbsp;&nbsp;numb.print();<br />}<br /><br /></font><br /><br /><img src ="http://www.cppblog.com/zhenglinbo/aggbug/160996.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-11-26 13:38 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/11/26/160996.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>二分法求方程的近似解（C++实现）</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/11/25/160983.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Fri, 25 Nov 2011 12:54:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/11/25/160983.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/160983.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/11/25/160983.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/160983.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/160983.html</trackback:ping><description><![CDATA[二分法思想：假定f(x)在区间（x，y）上连续 　　<br />先找到a、b属于区间（x，y），使f(a)，f(b)异号，<br />说明在区间(a,b)内一定有零点，然后求f[(a+b)/2], 　　<br />现在假设f(a)&lt;0,f(b)&gt;0,a&lt;b 　　&nbsp; <br />&#9312;如果f[(a+b)/2]=0，该点就是零点， 　　如果f[(a+b)/2]&lt;0,则在区间（(a+b)/2，b)内有零点，(a+b)/2=&gt;a，从&#9312;开始继续使用 　　中点函数值判断。 　　如果f[(a+b)/2]&gt;0，则在区间(a,(a+b)/2)内有零点，(a+b)/2&lt;=b，从&#9312;开始继续使用 　　中点函数值判断。 　　这样就可以不断接近零点。 　　通过每次把f(x)的零点所在小区间收缩一半的方法，使区间的两个端点逐步迫近函数的零点，以求得零点的近似值，这种方法叫做二分法。 <br /><br />头文件定义<br /><font color="#000000" face="Verdana">class CEquation<br />{<br />private:<br />&nbsp;double solution;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //方程的近似解<br />&nbsp;double a, b;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //近似解的区间<br />&nbsp;double (*p_fx)(double x);&nbsp;&nbsp; //p_fx是一个指向函数的指针,指向方程式求值函数<br />&nbsp;double (*p_solution)(double x, double y); //指向由近似解区间求近似解的函数的指针<br />&nbsp;double delta;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //求解精度<br />public:<br />&nbsp;CEquation(double av, double bv, double (*p1)(double), double (*p2)(double,double), double dv);<br />&nbsp;double biSection();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //二分法求方程近似解<br />&nbsp;void printSolution() const;<br />};<br /><br />类的实现及主函数实现：
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">CEquation::CEquation(</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;a_val,&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;b_val,&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">*</span><span style="color: #000000">p1)(</span><span style="color: #0000ff">double</span><span style="color: #000000">),&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">*</span><span style="color: #000000">p2)(</span><span style="color: #0000ff">double</span><span style="color: #000000">,&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">),&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;delta_val)<br /><img id="Codehighlighter1_119_240_Open_Image" onclick="this.style.display='none'; Codehighlighter1_119_240_Open_Text.style.display='none'; Codehighlighter1_119_240_Closed_Image.style.display='inline'; Codehighlighter1_119_240_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_119_240_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_119_240_Closed_Text.style.display='none'; Codehighlighter1_119_240_Open_Image.style.display='inline'; Codehighlighter1_119_240_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_119_240_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_119_240_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;a_val;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;b_val;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;p_fx&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;p1;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;p_solution&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;p2;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;solution&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;p_solution(a,&nbsp;b);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;delta&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;delta_val;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;fx(</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;x)&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">方程为:&nbsp;e^x+4^x3-6^x2+3x-2=0</span><span style="color: #008000"><br /><img id="Codehighlighter1_292_341_Open_Image" onclick="this.style.display='none'; Codehighlighter1_292_341_Open_Text.style.display='none'; Codehighlighter1_292_341_Closed_Image.style.display='inline'; Codehighlighter1_292_341_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_292_341_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_292_341_Closed_Text.style.display='none'; Codehighlighter1_292_341_Open_Image.style.display='inline'; Codehighlighter1_292_341_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_292_341_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_292_341_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;exp(x)</span><span style="color: #000000">+</span><span style="color: #000000">4.0</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">-</span><span style="color: #000000">6.0</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">+</span><span style="color: #000000">3.0</span><span style="color: #000000">*</span><span style="color: #000000">x</span><span style="color: #000000">-</span><span style="color: #000000">2.0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;middle(</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;x,&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;y)&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">中值</span><span style="color: #008000"><br /><img id="Codehighlighter1_384_408_Open_Image" onclick="this.style.display='none'; Codehighlighter1_384_408_Open_Text.style.display='none'; Codehighlighter1_384_408_Closed_Image.style.display='inline'; Codehighlighter1_384_408_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_384_408_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_384_408_Closed_Text.style.display='none'; Codehighlighter1_384_408_Open_Image.style.display='inline'; Codehighlighter1_384_408_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_384_408_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_384_408_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0.5</span><span style="color: #000000">*</span><span style="color: #000000">(x</span><span style="color: #000000">+</span><span style="color: #000000">y);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;CEquation::biSection()<br /><img id="Codehighlighter1_441_613_Open_Image" onclick="this.style.display='none'; Codehighlighter1_441_613_Open_Text.style.display='none'; Codehighlighter1_441_613_Closed_Image.style.display='inline'; Codehighlighter1_441_613_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_441_613_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_441_613_Closed_Text.style.display='none'; Codehighlighter1_441_613_Open_Image.style.display='inline'; Codehighlighter1_441_613_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_441_613_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_441_613_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;h;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;(fabs(a</span><span style="color: #000000">-</span><span style="color: #000000">b)&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;delta)<br /><img id="Codehighlighter1_482_563_Open_Image" onclick="this.style.display='none'; Codehighlighter1_482_563_Open_Text.style.display='none'; Codehighlighter1_482_563_Closed_Image.style.display='inline'; Codehighlighter1_482_563_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_482_563_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_482_563_Closed_Text.style.display='none'; Codehighlighter1_482_563_Open_Image.style.display='inline'; Codehighlighter1_482_563_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_482_563_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_482_563_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;h&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;p_solution(a,&nbsp;b);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(p_fx(a)</span><span style="color: #000000">*</span><span style="color: #000000">p_fx(h)&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;h;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;h;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;solution&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;p_solution(a,&nbsp;b);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;solution;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CEquation::printSolution()&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000"><br /><img id="Codehighlighter1_654_702_Open_Image" onclick="this.style.display='none'; Codehighlighter1_654_702_Open_Text.style.display='none'; Codehighlighter1_654_702_Closed_Image.style.display='inline'; Codehighlighter1_654_702_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_654_702_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_654_702_Closed_Text.style.display='none'; Codehighlighter1_654_702_Open_Image.style.display='inline'; Codehighlighter1_654_702_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_654_702_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_654_702_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">Solution&nbsp;is:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;solution&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;endl;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main&nbsp;()<br /><img id="Codehighlighter1_718_801_Open_Image" onclick="this.style.display='none'; Codehighlighter1_718_801_Open_Text.style.display='none'; Codehighlighter1_718_801_Closed_Image.style.display='inline'; Codehighlighter1_718_801_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_718_801_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_718_801_Closed_Text.style.display='none'; Codehighlighter1_718_801_Open_Image.style.display='inline'; Codehighlighter1_718_801_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_718_801_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_718_801_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />CEquation&nbsp;a(</span><span style="color: #000000">0.0</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">1.0</span><span style="color: #000000">,&nbsp;fx,&nbsp;middle,&nbsp;1e</span><span style="color: #000000">-</span><span style="color: #000000">6</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;a.biSection();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;a.printSolution();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div><br /><br /><br /></font><img src ="http://www.cppblog.com/zhenglinbo/aggbug/160983.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-11-25 20:54 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/11/25/160983.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实现四则运算的小程序源代码</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/10/05/157590.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Wed, 05 Oct 2011 14:03:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/10/05/157590.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/157590.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/10/05/157590.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/157590.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/157590.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;小累，国庆假期过去一大半，C++这时候才把递归和函数这一块知识点慢慢地啃完了，结束之前，今晚自己写了一个小程序，实现四则运算，适合小学生使用。程序说明：1）允许用户选择一种类型的算术问题来学习，输入1表示加法，2表示减法，3表示乘法，4表示除法，5表示四种混合运算；2）由于程序代码中反复无穷递归，所以该程序的运算会不断进行下去，退出请自动关闭程序；源代码如下： Code highl...&nbsp;&nbsp;<a href='http://www.cppblog.com/zhenglinbo/archive/2011/10/05/157590.html'>阅读全文</a><img src ="http://www.cppblog.com/zhenglinbo/aggbug/157590.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-10-05 22:03 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/10/05/157590.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打印图案程序</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/09/25/156763.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Sun, 25 Sep 2011 08:13:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/09/25/156763.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/156763.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/09/25/156763.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/156763.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/156763.html</trackback:ping><description><![CDATA[<br /><br />下午照样看C++how to program，加油，要到数组和指针了，接下来就是类的深入剖析了，这几天在加强火力猛攻这块地方，哈哈，还是编程菜鸟！不过我自己感觉比大一那时候真的有点进步了，有那种coding 的感觉了，努力学习还是有收获的。闲话休说，把今天下午自己写的代码发上来！
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;row,line;</span><span style="color: #008000">//</span><span style="color: #008000">定义行、列数的变量</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(row</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;row</span><span style="color: #000000">&lt;=</span><span style="color: #000000">10</span><span style="color: #000000">;row</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">row;line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\n</span><span style="color: #000000">"</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">第一个图形至此打印出来</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(row</span><span style="color: #000000">=</span><span style="color: #000000">10</span><span style="color: #000000">;row</span><span style="color: #000000">&gt;=</span><span style="color: #000000">1</span><span style="color: #000000">;row</span><span style="color: #000000">--</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">row;line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\n</span><span style="color: #000000">"</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">第二个图形打印出来</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(row</span><span style="color: #000000">=</span><span style="color: #000000">10</span><span style="color: #000000">;row</span><span style="color: #000000">&gt;=</span><span style="color: #000000">1</span><span style="color: #000000">;row</span><span style="color: #000000">--</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">row;line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">(</span><span style="color: #000000">11</span><span style="color: #000000">-</span><span style="color: #000000">row);line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\n</span><span style="color: #000000">"</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;第三个图形打印出来</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(row</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;row</span><span style="color: #000000">&lt;=</span><span style="color: #000000">10</span><span style="color: #000000">;row</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">10</span><span style="color: #000000">-</span><span style="color: #000000">row;line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(line</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;line</span><span style="color: #000000">&lt;=</span><span style="color: #000000">row;line</span><span style="color: #000000">++</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">最后一个图形！</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><br />}<br /></span></div><br /><br />程序运行结果<br />：<br /><img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/zhenglinbo/QQ截图未命名1.png" width="212" height="339" /><img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/zhenglinbo/QQ截图未命名2.png" width="198" height="344" /><br /><br /><br /><br /><img src ="http://www.cppblog.com/zhenglinbo/aggbug/156763.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-09-25 16:13 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/09/25/156763.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于endl的一点总结</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156578.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Thu, 22 Sep 2011 21:18:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156578.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/156578.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156578.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/156578.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/156578.html</trackback:ping><description><![CDATA[<br />我们知道，std::cout&lt;&lt;endl是使输入的数强制输出，以前我没发现，今天发现，如果是输入一行数的话，使用这个std::cout&lt;&lt;endl，程序是默认每输出一个数就回车的，而不是排成一行！<br />请看一下一例：<br />该程序要求输入长度，然后输出一个四条边都带相同数量星号的矩形。 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 99.41%; padding-right: 5px; height: 531px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /><img id="Codehighlighter1_51_471_Open_Image" onclick="this.style.display='none'; Codehighlighter1_51_471_Open_Text.style.display='none'; Codehighlighter1_51_471_Closed_Image.style.display='inline'; Codehighlighter1_51_471_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_51_471_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_51_471_Closed_Text.style.display='none'; Codehighlighter1_51_471_Open_Image.style.display='inline'; Codehighlighter1_51_471_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_51_471_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_51_471_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;side,rowPosition,size;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">input&nbsp;the&nbsp;square&nbsp;side:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">输入矩形的宽度</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">side;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;size</span><span style="color: #000000">=</span><span style="color: #000000">side;</span><span style="color: #008000">//</span><span style="color: #008000">使长宽的边所带星号数量相同</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(side</span><span style="color: #000000">&gt;</span><span style="color: #000000">0</span><span style="color: #000000">)</span><span style="color: #008000">//</span><span style="color: #008000">双重循环输出矩形</span><span style="color: #008000"><br /><img id="Codehighlighter1_189_424_Open_Image" onclick="this.style.display='none'; Codehighlighter1_189_424_Open_Text.style.display='none'; Codehighlighter1_189_424_Closed_Image.style.display='inline'; Codehighlighter1_189_424_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_189_424_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_189_424_Closed_Text.style.display='none'; Codehighlighter1_189_424_Open_Image.style.display='inline'; Codehighlighter1_189_424_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_189_424_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_189_424_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rowPosition</span><span style="color: #000000">=</span><span style="color: #000000">size;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(rowPosition</span><span style="color: #000000">&gt;</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img id="Codehighlighter1_236_360_Open_Image" onclick="this.style.display='none'; Codehighlighter1_236_360_Open_Text.style.display='none'; Codehighlighter1_236_360_Closed_Image.style.display='inline'; Codehighlighter1_236_360_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_236_360_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_236_360_Closed_Text.style.display='none'; Codehighlighter1_236_360_Open_Image.style.display='inline'; Codehighlighter1_236_360_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_236_360_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_236_360_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(size</span><span style="color: #000000">==</span><span style="color: #000000">side</span><span style="color: #000000">||</span><span style="color: #000000">side</span><span style="color: #000000">==</span><span style="color: #000000">1</span><span style="color: #000000">||</span><span style="color: #000000">rowPosition</span><span style="color: #000000">==</span><span style="color: #000000">1</span><span style="color: #000000">||</span><span style="color: #000000">rowPosition</span><span style="color: #000000">==</span><span style="color: #000000">size)<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">'</span><span style="color: #000000">*</span><span style="color: #000000">'</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">'</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">--</span><span style="color: #000000">rowPosition;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">'</span><span style="color: #000000">\n</span><span style="color: #000000">'</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">在这里等一行自然输出后，在利用cout&lt;&lt;&#8216;\n'回车，输出下一行</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">--</span><span style="color: #000000">side;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;</span><span style="color: #008000">//</span><span style="color: #008000">这里总的强制输出所有输入的字符</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span></div><br />程序运行效果如下图，输入8；<br /><br /><br /><img style="width: 441px; height: 341px" border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/zhenglinbo/QQ截图未命名344.png" width="441" longdesc="" height="341" /><br /><br /><br />如果在程序的每条cout语句中加上&lt;&lt;endl; 那么程序运行的效果（图所限，"end line": inserts a newline into the stream and calls flush.有省略一些）如下：<br /><br /><br /><br /><img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/zhenglinbo/QQ截图未命名345.png" width="243" longdesc="" height="369" /><br /><br />后注：刚刚在维基百科里查到std::endl的定义，它说，"end line": inserts a newline into the stream and calls flush. 这就是说endl的功能就是强制输出和换行，现在懂了，感谢博友的认真更正，学习了。:)<img src ="http://www.cppblog.com/zhenglinbo/aggbug/156578.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-09-23 05:18 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156578.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>The credit card codes</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156574.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Thu, 22 Sep 2011 17:13:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156574.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/156574.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156574.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/156574.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/156574.html</trackback:ping><description><![CDATA[<p><br />Tonight I was&nbsp;studying the credit card codes, all of these was copied from my book,"C++ &#8212;&#8212;how to program".<br /><br />This&nbsp;are the program demand:<br />1)Account number(an integer);<br />2)Balance at the begining of the month;<br />3)Total all items charged by this customer this month;<br />4)Total of all items applied to this customer's account this month;<br />5)Allowed credit limit.<br /><br /><br />The program should input each of these facts, calculate the new balance(=begining balance+charges-credits) and determine if the new balance exceeds the&nbsp;customer credit limit. <br />For those customers whose credit limit is exceeded, the program should display the customer's account number,credit limit,new balance and the message "Credit limit exceeded".<br /><br /></p>
<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"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iomanip</span><span style="color: #000000">&gt;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;formatting&nbsp;integers&nbsp;and&nbsp;the&nbsp;precision&nbsp;of&nbsp;floating&nbsp;point&nbsp;values</span><span style="color: #008000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /><img id="Codehighlighter1_135_888_Open_Image" onclick="this.style.display='none'; Codehighlighter1_135_888_Open_Text.style.display='none'; Codehighlighter1_135_888_Closed_Image.style.display='inline'; Codehighlighter1_135_888_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"><img id="Codehighlighter1_135_888_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_135_888_Closed_Text.style.display='none'; Codehighlighter1_135_888_Open_Image.style.display='inline'; Codehighlighter1_135_888_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top"></span><span id="Codehighlighter1_135_888_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 alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_135_888_Open_Text"><span style="color: #000000">{<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;accountNumber;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;balance,charges,credits,limit;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;account&nbsp;number(-1&nbsp;to&nbsp;end):</span><span style="color: #000000">"</span><span style="color: #000000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">setiosflags(ios::</span><span style="color: #0000ff">fixed</span><span style="color: #000000">|</span><span style="color: #000000">ios::showpoint);</span><span style="color: #008000">// to convert data from fixed point number representation to floating point representation</span><span style="color: #008000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">accountNumber;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(accountNumber</span><span style="color: #000000">!=-</span><span style="color: #000000">1</span><span style="color: #000000">)<br /><img id="Codehighlighter1_367_861_Open_Image" onclick="this.style.display='none'; Codehighlighter1_367_861_Open_Text.style.display='none'; Codehighlighter1_367_861_Closed_Image.style.display='inline'; Codehighlighter1_367_861_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_367_861_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_367_861_Closed_Text.style.display='none'; Codehighlighter1_367_861_Open_Image.style.display='inline'; Codehighlighter1_367_861_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_367_861_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 alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_367_861_Open_Text"><span style="color: #000000">{<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;beginning&nbsp;balance:</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">balance;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;total&nbsp;charges:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">charges;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;total&nbsp;credits:</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">credits;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;credit&nbsp;limit:</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">limit;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;balance</span><span style="color: #000000">+=</span><span style="color: #000000">charges</span><span style="color: #000000">-</span><span style="color: #000000">credits;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(balance</span><span style="color: #000000">&gt;</span><span style="color: #000000">limit)<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Account:　　</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">accountNumber<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\nCredit&nbsp;limit:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">setprecision(</span><span style="color: #000000">2</span><span style="color: #000000">)</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">limit //accurate to two decimal point<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\nBalance:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">setprecision(</span><span style="color: #000000">2</span><span style="color: #000000">)</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">balance<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\nCredit&nbsp;Limit&nbsp;Exceeded.\n</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\nEnter&nbsp;account&nbsp;number(-1&nbsp;to&nbsp;end):&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">accountNumber;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="color: #000000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span></div>
<p>&nbsp;<img style="width: 681px; height: 545px" height="545" alt="" src="http://www.cppblog.com/images/cppblog_com/zhenglinbo/QQ截图未命名.png" width="681" border="0" longdesc="" /><br /><br />input -1 and the program will be ended.<br /></p><img src ="http://www.cppblog.com/zhenglinbo/aggbug/156574.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-09-23 01:13 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/09/23/156574.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++中如何使用构造函数初始化对象</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/09/22/156482.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Wed, 21 Sep 2011 16:01:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/09/22/156482.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/156482.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/09/22/156482.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/156482.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/156482.html</trackback:ping><description><![CDATA[<div>构造函数是什么？看下面几行代码：<br />class GradeBook<br />{<br />&nbsp; public:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;void setCourseName(string name)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; courseName=name;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; string getCourseName()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return courseName;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GradeBook myGradeBook;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout&lt;&lt;"Initial course name is: "&lt;&lt;myGradeBook.getCourseName()&lt;&lt;endl;<br />}<br />这几行代码中，定义一个类GradeBook，成员访问说明符public表示在这个符号之下的函数，函数都是公共可相互被调用的。创建GradeBook类的对象时（对象可以这样创建：GradeBook myGradeBook; 这里myGradeBook就是类的对象 ），该对象的数据成员courseName被初始化为默认的空串。事实上，我们可用定义一个构造函数，用于类对象创建时的初始化。<br />构造函数是一种特殊的成员函数，定义时必须与类同名。它和其他成员函数的一个重大差别是构造函数不能返回值，通常构造函数声明为public。<br /><br />请看一个实例： 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span>&nbsp;<span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;2</span>&nbsp;<span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">string</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span>&nbsp;<span style="color: #000000"></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /></span><span style="color: #008080">&nbsp;4</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;5</span>&nbsp;<span style="color: #000000"></span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;GradeBook&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">定义类</span><span style="color: #008000"><br /></span><span style="color: #008080">&nbsp;6</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">{<br /></span><span style="color: #008080">&nbsp;7</span>&nbsp;<span style="color: #000000"></span><span style="color: #0000ff">public</span><span style="color: #000000">:<br /></span><span style="color: #008080">&nbsp;8</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;GradeBook(</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;name)</span><span style="color: #008000">//</span><span style="color: #008000">定义了GradeBook类的一个构造函数，有一个string形参name,与下面的形参name名字相同，但互不干扰</span><span style="color: #008000"><br /></span><span style="color: #008080">&nbsp;9</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;{<br /></span><span style="color: #008080">10</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setCourseName(name);</span><span style="color: #008000">//</span><span style="color: #008000">调用函数赋值，构造函数的好处是：只是简单调用，要改变时只需对被调用函数进行修改</span><span style="color: #008000"><br /></span><span style="color: #008080">11</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br /></span><span style="color: #008080">12</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">13</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;setCourseName(</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;name)</span><span style="color: #008000">//</span><span style="color: #008000">这个函数的形参为name</span><span style="color: #008000"><br /></span><span style="color: #008080">14</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;{<br /></span><span style="color: #008080">15</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;courseName</span><span style="color: #000000">=</span><span style="color: #000000">name;<br /></span><span style="color: #008080">16</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br /></span><span style="color: #008080">17</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;getCourseName()<br /></span><span style="color: #008080">18</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;{<br /></span><span style="color: #008080">19</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;courseName;<br /></span><span style="color: #008080">20</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br /></span><span style="color: #008080">21</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">22</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;displayMessage()<br /></span><span style="color: #008080">23</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;{<br /></span><span style="color: #008080">24</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Welcome&nbsp;to&nbsp;the&nbsp;grade&nbsp;book&nbsp;for\n</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">getCourseName()&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">下面的main()函数中，没有调用getCourseName()函数</span><span style="color: #008000"><br /></span><span style="color: #008080">25</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">!</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br /></span><span style="color: #008080">26</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br /></span><span style="color: #008080">27</span>&nbsp;<span style="color: #000000"></span><span style="color: #0000ff">private</span><span style="color: #000000">:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;私有的，在这个成员访问说明符之后声明的变量或者函数，只可以被声明它们的类的成员函数所访问</span><span style="color: #008000"><br /></span><span style="color: #008080">28</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;courseName;<br /></span><span style="color: #008080">29</span>&nbsp;<span style="color: #000000">};<br /></span><span style="color: #008080">30</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">31</span>&nbsp;<span style="color: #000000"></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /></span><span style="color: #008080">32</span>&nbsp;<span style="color: #000000">{<br /></span><span style="color: #008080">33</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;GradeBook&nbsp;gradeBook1(</span><span style="color: #000000">"</span><span style="color: #000000">CS101&nbsp;Introduction&nbsp;to&nbsp;C++&nbsp;Programming</span><span style="color: #000000">"</span><span style="color: #000000">);&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">创建类的对象,并把实参赋予形参name</span><span style="color: #008000"><br /></span><span style="color: #008080">34</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;GradeBook&nbsp;gradeBook2(</span><span style="color: #000000">"</span><span style="color: #000000">CS102&nbsp;Data&nbsp;Structures&nbsp;in&nbsp;C++</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">35</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">36</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">gradeBook1&nbsp;created&nbsp;for&nbsp;course:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">gradeBook1.getCourseName()&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">调用类的成员函数getCourseName()，初始化类的对象</span><span style="color: #008000"><br /></span><span style="color: #008080">37</span>&nbsp;<span style="color: #008000"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">\ngradeBook2&nbsp;created&nbsp;for&nbsp;course:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">gradeBook2.getCourseName()</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br /></span><span style="color: #008080">38</span>&nbsp;<span style="color: #000000">}<br /></span><span style="color: #008080">39</span>&nbsp;<span style="color: #000000"><br /></span><span style="color: #008080">40</span>&nbsp;<span style="color: #000000"></span></div><br /><br />PS：1）为类提供默认构造函数的两种方法：<font color="#000000" face="Verdana">&#9312;</font>编译器隐式地在没有定义构造函数的类中创建一个默认的构造函数，这样的默认构造函数不初始化类的数据成员，而是调用其他类的对象的每个数据成员的默认构造函数。没有初始化的变量通常包含&#8220;垃圾&#8221;值。<br />&nbsp; <font color="#000000" face="Verdana">&#9313;</font>程序员显式定义一个不接受实参的构造函数。<br /><br />2）除非没有必要初始化类的数据成员（几乎不可能），否则请提供构造函数，这样可以保证当类的每一个新对象被创建时，类的数据成员都用有意义的值进行了初始化。<br /><br /><br /><br /><br /><br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div><img src ="http://www.cppblog.com/zhenglinbo/aggbug/156482.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-09-22 00:01 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/09/22/156482.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第一篇C++学习日志</title><link>http://www.cppblog.com/zhenglinbo/archive/2011/09/19/156271.html</link><dc:creator>hoshelly</dc:creator><author>hoshelly</author><pubDate>Mon, 19 Sep 2011 15:22:00 GMT</pubDate><guid>http://www.cppblog.com/zhenglinbo/archive/2011/09/19/156271.html</guid><wfw:comment>http://www.cppblog.com/zhenglinbo/comments/156271.html</wfw:comment><comments>http://www.cppblog.com/zhenglinbo/archive/2011/09/19/156271.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenglinbo/comments/commentRss/156271.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenglinbo/services/trackbacks/156271.html</trackback:ping><description><![CDATA[先给出一个程序，C++写成。 
<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"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /><img id="Codehighlighter1_30_261_Open_Image" onclick="this.style.display='none'; Codehighlighter1_30_261_Open_Text.style.display='none'; Codehighlighter1_30_261_Closed_Image.style.display='inline'; Codehighlighter1_30_261_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"><img id="Codehighlighter1_30_261_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_30_261_Closed_Text.style.display='none'; Codehighlighter1_30_261_Open_Image.style.display='inline'; Codehighlighter1_30_261_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top"></span><span id="Codehighlighter1_30_261_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 alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_30_261_Open_Text"><span style="color: #000000">{<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;number1;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;number2;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;sum;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;std::cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;first&nbsp;integer:\n</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;std::cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">number1;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;std::cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Enter&nbsp;second&nbsp;integer:\n</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;std::cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">number2;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;sum</span><span style="color: #000000">=</span><span style="color: #000000">number1</span><span style="color: #000000">+</span><span style="color: #000000">number2;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;std::cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">Sum&nbsp;is</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">sum</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">std::endl;//输出变量sum；<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img alt="" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><br /><br /><font face="Verdana" color="#000000">std::cout是标准输出流对象，通常&#8220;连接&#8221;到屏幕；双尖括号&lt;&lt;运算符称为流插入运算符，显示输入的值；<br />std::cin是输入流对象，流提取运算符&gt;&gt;是来获取键盘输入的值。<br />std::endl输出一个换行符，然后&#8220;刷新输出缓冲&#8221;。简单来说，在一些系统中，输出在机器中积存，直到积累到&#8220;值得&#8221;输出到屏幕上为止；而std::endl 则强制显示所有积存的输出。<br /><br />运算符的优先级规则。<br />1）圆括号具有最高的优先级；<br />2）接下来是乘法、除法和求模运算（%）。<br />3）最后是加法和减法运算。加法和减法具有相同的运算级。<br /><br /><br />声明：using std::cout;是一个using 声明，它可以消除重复使用std::前缀的需要。<br />更多程序员用using namespace std;使程序可以使用程序包含的任何标准的C++头文件中的所有名字（如std)。<br /><br /><br />例子：编写一个完整的程序，计算并显示三个整数的乘积。 
<p><font face="Verdana" color="#000000">#include&lt;iostream&gt;<br />using namespace std;<br />int main()<br />{<br />&nbsp;int x;<br />&nbsp;int y;<br />&nbsp;int z;<br />&nbsp;int result;<br />&nbsp;cout&lt;&lt;"input three numbers:\n";<br />&nbsp;cin&gt;&gt;x&gt;&gt;y&gt;&gt;z;<br />&nbsp;result=x*y*z;<br />&nbsp;cout&lt;&lt;"The product is "&lt;&lt;result&lt;&lt;endl;<br />&nbsp;return 0;<br />}</font></p>
<p>&nbsp;</p></font><br /><img src ="http://www.cppblog.com/zhenglinbo/aggbug/156271.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenglinbo/" target="_blank">hoshelly</a> 2011-09-19 23:22 <a href="http://www.cppblog.com/zhenglinbo/archive/2011/09/19/156271.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>