﻿<?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++博客-&lt;font size=6 color="black"&gt;je pense, donc je suis&lt;/font&gt;-随笔分类-C/CPlusPlus</title><link>http://www.cppblog.com/zytoftuncun/category/3461.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 21 May 2008 19:16:13 GMT</lastBuildDate><pubDate>Wed, 21 May 2008 19:16:13 GMT</pubDate><ttl>60</ttl><item><title>GUI何去何从之WxWigets入门 </title><link>http://www.cppblog.com/zytoftuncun/archive/2007/07/27/28865.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Fri, 27 Jul 2007 07:55:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/07/27/28865.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/28865.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/07/27/28865.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/28865.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/28865.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>由于<span>SmartWin</span>岁数尚轻，网路上资料并不多，只能看着文档摸索。因此要轻松学习是相当困难的，不过有个设计<span>GUI</span>的可视化环境叫<span>Sally</span>的，俺上<span>sourceforge</span>上下载结果网页出错，正当十分泄气之时，俺瞥见了<span>WxWigets</span>，也是相当好玩的。于是迫不及待的下载下来安装上，呵呵。一查网上资料还真挺丰富的，起码有本权威一点的指导书《使用<span>WxWigets</span>跨平台<span>GUI</span>设计》，呵呵，最可喜的是居然俺一直在用的<span>Dev-C++</span>有一个兄弟<span>Wx Dev-C++</span>，用他来设计是相当不错的。<br><img style="WIDTH: 830px; HEIGHT: 489px" height=489 alt="" src="http://www.cppblog.com/images/cppblog_com/zytoftuncun/wx.PNG" width=830 border=0><span style="BACKGROUND-COLOR: #008000"><br></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt">生成的代码<o:p></o:p></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"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;HTMLEditorFrm::CreateGUIControls()<br><img id=Codehighlighter1_40_1232_Open_Image onclick="this.style.display='none'; Codehighlighter1_40_1232_Open_Text.style.display='none'; Codehighlighter1_40_1232_Closed_Image.style.display='inline'; Codehighlighter1_40_1232_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_40_1232_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_40_1232_Closed_Text.style.display='none'; Codehighlighter1_40_1232_Open_Image.style.display='inline'; Codehighlighter1_40_1232_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_40_1232_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_40_1232_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">Do&nbsp;not&nbsp;add&nbsp;custom&nbsp;code&nbsp;between<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">GUI&nbsp;Items&nbsp;Creation&nbsp;Start&nbsp;and&nbsp;GUI&nbsp;Items&nbsp;Creation&nbsp;End<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">wxDev-C++&nbsp;designer&nbsp;will&nbsp;remove&nbsp;them.<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">Add&nbsp;the&nbsp;custom&nbsp;code&nbsp;before&nbsp;or&nbsp;after&nbsp;the&nbsp;blocks</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_222_250_Open_Image onclick="this.style.display='none'; Codehighlighter1_222_250_Open_Text.style.display='none'; Codehighlighter1_222_250_Closed_Image.style.display='inline'; Codehighlighter1_222_250_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_222_250_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_222_250_Closed_Text.style.display='none'; Codehighlighter1_222_250_Open_Image.style.display='inline'; Codehighlighter1_222_250_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_222_250_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">/**/</span><span id=Codehighlighter1_222_250_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">/GUI&nbsp;Items&nbsp;Creation&nbsp;Start</span><span style="COLOR: #808080"></span></span><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxStatusBar1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;wxStatusBar(</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">,&nbsp;ID_WXSTATUSBAR1);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxSplitterWindow1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;wxSplitterWindow(</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">,&nbsp;ID_WXSPLITTERWINDOW1,&nbsp;wxPoint(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">),&nbsp;wxSize(</span><span style="COLOR: #000000">400</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">99</span><span style="COLOR: #000000">));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxSplitterWindow1</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">SetFont(wxFont(</span><span style="COLOR: #000000">9</span><span style="COLOR: #000000">,&nbsp;wxSWISS,&nbsp;wxNORMAL,wxNORMAL,&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">宋体</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxHtmlWindow1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;wxHtmlWindow(WxSplitterWindow1,&nbsp;ID_WXHTMLWINDOW1,&nbsp;wxPoint(</span><span style="COLOR: #000000">5</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">5</span><span style="COLOR: #000000">),&nbsp;wxSize(</span><span style="COLOR: #000000">185</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">89</span><span style="COLOR: #000000">));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxHtmlWindow1</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">SetFont(wxFont(</span><span style="COLOR: #000000">9</span><span style="COLOR: #000000">,&nbsp;wxSWISS,&nbsp;wxNORMAL,wxNORMAL,&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">宋体</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxMenuBar1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;wxMenuBar();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;wxMenu&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">ID_MNU_FILE_1011_Mnu_Obj&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;wxMenu(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ID_MNU_FILE_1011_Mnu_Obj</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">Append(ID_MNU_OPEN_TCTRL_O_1012,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&amp;Open\tCtrl+O</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">),&nbsp;wxT(</span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">),&nbsp;wxITEM_NORMAL);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ID_MNU_FILE_1011_Mnu_Obj</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">Append(ID_MNU_SAVE_1013,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&amp;Save\tCtrl+S</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">),&nbsp;wxT(</span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">),&nbsp;wxITEM_NORMAL);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ID_MNU_FILE_1011_Mnu_Obj</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">AppendSeparator();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ID_MNU_FILE_1011_Mnu_Obj</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">Append(ID_MNU_EXIT_1016,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">E&amp;xit</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">),&nbsp;wxT(</span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">),&nbsp;wxITEM_NORMAL);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;WxMenuBar1</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">Append(ID_MNU_FILE_1011_Mnu_Obj,&nbsp;wxT(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&amp;File</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;SetMenuBar(WxMenuBar1);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;<br><img id=Codehighlighter1_1205_1231_Open_Image onclick="this.style.display='none'; Codehighlighter1_1205_1231_Open_Text.style.display='none'; Codehighlighter1_1205_1231_Closed_Image.style.display='inline'; Codehighlighter1_1205_1231_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1205_1231_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1205_1231_Closed_Text.style.display='none'; Codehighlighter1_1205_1231_Open_Image.style.display='inline'; Codehighlighter1_1205_1231_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_1205_1231_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">/**/</span><span id=Codehighlighter1_1205_1231_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">/GUI&nbsp;Items&nbsp;Creation&nbsp;End</span><span style="COLOR: #808080"></span></span><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;HTMLEditorFrm::OnClose(wxCloseEvent</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">event</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_1284_1298_Open_Image onclick="this.style.display='none'; Codehighlighter1_1284_1298_Open_Text.style.display='none'; Codehighlighter1_1284_1298_Closed_Image.style.display='inline'; Codehighlighter1_1284_1298_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1284_1298_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1284_1298_Closed_Text.style.display='none'; Codehighlighter1_1284_1298_Open_Image.style.display='inline'; Codehighlighter1_1284_1298_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1284_1298_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1284_1298_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Destroy();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_1301_1324_Open_Image onclick="this.style.display='none'; Codehighlighter1_1301_1324_Open_Text.style.display='none'; Codehighlighter1_1301_1324_Closed_Image.style.display='inline'; Codehighlighter1_1301_1324_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1301_1324_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1301_1324_Closed_Text.style.display='none'; Codehighlighter1_1301_1324_Open_Image.style.display='inline'; Codehighlighter1_1301_1324_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1301_1324_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">/**/</span><span id=Codehighlighter1_1301_1324_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;*&nbsp;WxMemo1Updated<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;HTMLEditorFrm::WxMemo1Updated(wxCommandEvent</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">event</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_1384_1412_Open_Image onclick="this.style.display='none'; Codehighlighter1_1384_1412_Open_Text.style.display='none'; Codehighlighter1_1384_1412_Closed_Image.style.display='inline'; Codehighlighter1_1384_1412_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1384_1412_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1384_1412_Closed_Text.style.display='none'; Codehighlighter1_1384_1412_Open_Image.style.display='inline'; Codehighlighter1_1384_1412_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1384_1412_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1384_1412_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;insert&nbsp;your&nbsp;code&nbsp;here</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top></span><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_1415_1440_Open_Image onclick="this.style.display='none'; Codehighlighter1_1415_1440_Open_Text.style.display='none'; Codehighlighter1_1415_1440_Closed_Image.style.display='inline'; Codehighlighter1_1415_1440_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1415_1440_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1415_1440_Closed_Text.style.display='none'; Codehighlighter1_1415_1440_Open_Image.style.display='inline'; Codehighlighter1_1415_1440_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1415_1440_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">/**/</span><span id=Codehighlighter1_1415_1440_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;*&nbsp;Mnuexit1016Click<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;HTMLEditorFrm::Mnuexit1016Click(wxCommandEvent</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">event</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_1502_1542_Open_Image onclick="this.style.display='none'; Codehighlighter1_1502_1542_Open_Text.style.display='none'; Codehighlighter1_1502_1542_Closed_Image.style.display='inline'; Codehighlighter1_1502_1542_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1502_1542_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1502_1542_Closed_Text.style.display='none'; Codehighlighter1_1502_1542_Open_Image.style.display='inline'; Codehighlighter1_1502_1542_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1502_1542_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1502_1542_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;insert&nbsp;your&nbsp;code&nbsp;here</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;Destroy();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<br>&nbsp;&nbsp; <span>虽然没有<span>smartwin</span>通俗易懂，但面对如此好用的工具，还是很有吸引力的。原理也类似，生成框架，对各个属性设置，然后对基于事件驱动的话，每个控件都有一个函数，你可以自己定义动作。</span>
<p><span>Wxwigets</span><span>的帮助文件查找相应的类和函数是很方便的，所以用他来做俺的小玩意还是比较合适的。</span></p>
</span>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/28865.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-07-27 15:55 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/07/27/28865.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GUI何去何从之SmartWin++入门</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/07/26/28798.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Thu, 26 Jul 2007 01:35:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/07/26/28798.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/28798.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/07/26/28798.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/28798.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/28798.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>&nbsp; 侯俊杰弄东西喜欢刮骨掏心，俺真是无语。俺觉得深入浅出<span>MFC</span>俺应该从第三篇开始看，跳过&#8220;勿在浮沙筑高台&#8221;和&#8220;欲善工事先利其器&#8221;，只为玩玩，何必认真！俊杰啊，你这么深做啥呢？老狐狸用的是<span>Visual studio 5.0</span>，俺用<span>2003</span>，应该无大碍的吧。其实俺还是看不惯<span>MFC</span>。昨天老大说了<span>MFC</span>快寿终正寝了，说<span>.net</span>时代，微软自己都把他扔垃圾堆了。还有都<span>WinFX</span>、<span>Avalon</span>时代了，谁还用那个云云，偶的学习动力彻底崩溃。然后看看<span>Qt</span>，是商业的，麻烦的很。于是老大推荐<span>SmartWin++</span>，俺大致看了一个例子，也就是传统意义上的<span>helloworld</span>！感觉还不错，代码挺清楚的。比<span>MFC</span>的使用的一堆变量名好记多了，呵呵，毕竟是轻量级的<span>GUI</span>开发库。反正闲着也是闲着，遂先瞧瞧吧！<br></span></p>
<p><span></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"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;SmartWinMain(&nbsp;Application&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;app&nbsp;)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_39_162_Open_Image onclick="this.style.display='none'; Codehighlighter1_39_162_Open_Text.style.display='none'; Codehighlighter1_39_162_Closed_Image.style.display='inline'; Codehighlighter1_39_162_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_39_162_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_39_162_Closed_Text.style.display='none'; Codehighlighter1_39_162_Open_Image.style.display='inline'; Codehighlighter1_39_162_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_39_162_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_39_162_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HelloWinClass&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;testHello&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;HelloWinClass;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;testHello</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">initAndCreate();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;app.run();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>&nbsp; 还是和<span>Windows Api</span>编程一样的额，建立一个全局的对象，然后初始化并创建，创建的时候无非是先<span>creat</span>一个<span>window</span>给各个属性初始化和设计。</span></p>
<p><span></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"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;initAndCreate()<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_30_450_Open_Image onclick="this.style.display='none'; Codehighlighter1_30_450_Open_Text.style.display='none'; Codehighlighter1_30_450_Closed_Image.style.display='inline'; Codehighlighter1_30_450_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_30_450_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_30_450_Closed_Text.style.display='none'; Codehighlighter1_30_450_Open_Image.style.display='inline'; Codehighlighter1_30_450_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_30_450_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_30_450_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;createWindow();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;setText(&nbsp;_T(&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Hello&nbsp;SmartWin</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;)&nbsp;);&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;Title</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;SmartWin::Rectangle&nbsp;desktop(&nbsp;getDesktopSize()&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;setBounds(&nbsp;desktop.top(&nbsp;</span><span style="COLOR: #000000">0.2</span><span style="COLOR: #000000">&nbsp;).left(&nbsp;</span><span style="COLOR: #000000">0.3</span><span style="COLOR: #000000">&nbsp;)&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;itsButton&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;createButton();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;itsButton</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">setText(&nbsp;_T(&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Hello&nbsp;from&nbsp;a&nbsp;button</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;)&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img 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;itsButton</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">onClicked(&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;HelloWinClass::buttonClicked&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&#8230;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>&nbsp; 俺实在喜欢他起的标识符，一看就懂。省的每每<span>go to definition。<br>&nbsp; 编译这个库的时候还是得用Mingw，gcc否则一堆错误。<br>&nbsp; 记得以前宿舍有个同学说，管他什么标准，大爷通过了就行。俺也在想这个标准到底是怎么回事呢？<br>&nbsp; 符合标准到底有什么好处呢？</span></span></p>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/28798.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-07-26 09:35 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/07/26/28798.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件实习作业(二)</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/07/16/28149.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Mon, 16 Jul 2007 13:17:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/07/16/28149.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/28149.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/07/16/28149.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/28149.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/28149.html</trackback:ping><description><![CDATA[&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;&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;&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;&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;&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;&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;&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;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.cppblog.com/Files/zytoftuncun/pro2.rar"><span style="COLOR: red"><u>源代码下载</u></span></a><br>&nbsp;<strong><span>实验二：</span></strong><span>某工厂有一名老板</span><span>Boss</span><span>，及若干工人。工人分为小时工</span><span>HourlyWorker</span><span>、计件工</span><span>PieceWorker</span><span>、销售员</span><span>CommissionWorker</span><span>。小时工每周工作</span><span>40</span><span>小时，超过</span><span>40</span><span>小时部分的报酬是平时的</span><span>1.5</span><span>倍；计件工是按生产的工件计算报酬的，每件的报酬是固定的，假设他只生产一种类型的工件；销售员每周有小部分固定的基本工资加上每周销售额的固定百分比；老板每周有固定的薪水。为该工厂设计一个简单的当前周的工资管理信息系统。要求如下：</span>
<p><span>１．设计实现一个简单的类</span><span>Employee</span><span>，它存储雇员的工号、姓（成员</span><span>firstName</span><span>）和名（成员</span><span>lastName</span><span>）。从雇员类</span><span>Employee</span><span>派生出小时工类</span><span>HourlyWorker</span><span>、计件工类</span><span>PieceWorker</span><span>、销售员类</span><span>CommissionWorker</span><span>及老板类</span><span>Boss</span><span>。</span></p>
<p><span>２．设计实现一个工厂类（</span><span>Factory</span><span>），它存储工厂名（</span><span>factoryName</span><span>）、工厂中的员工人数（含老板）等信息。及一个</span><span>Employee</span><span>指针数组存放工厂的所有员工信息。</span></p>
<p><span>３．可以增加一名工人。增加工人时，根据工人的类别，输入相应的信息。如增加的是小时工，则需要输入该小时工的工号、姓、名、本周工作小时数及每小时工资额等信息。</span></p>
<p><span>４．可以根据工号删除一名工人</span></p>
<p><span>５．可以根据工号修改工人的信息</span></p>
<p><span>６．可以显示出所有员工的本周工资信息</span></p>
<p><span>７．显示出一些统计信息，如本周支付所有员工的工资总额；小时工的工资总额、最高、最低、平均工资；计件工的工资总额、最高、最低、平均工资；销售员的工资总额、最高、最低、平均工资<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"><img id=Codehighlighter1_0_63_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_63_Open_Text.style.display='none'; Codehighlighter1_0_63_Closed_Image.style.display='inline'; Codehighlighter1_0_63_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_0_63_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_0_63_Closed_Text.style.display='none'; Codehighlighter1_0_63_Open_Image.style.display='inline'; Codehighlighter1_0_63_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><span id=Codehighlighter1_0_63_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">/**/</span><span id=Codehighlighter1_0_63_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">**************************<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>*&nbsp;&nbsp;雇员类<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>**************************</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Employee<br><img id=Codehighlighter1_81_391_Open_Image onclick="this.style.display='none'; Codehighlighter1_81_391_Open_Text.style.display='none'; Codehighlighter1_81_391_Closed_Image.style.display='inline'; Codehighlighter1_81_391_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_81_391_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_81_391_Closed_Text.style.display='none'; Codehighlighter1_81_391_Open_Image.style.display='inline'; Codehighlighter1_81_391_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_81_391_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_81_391_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;workNo;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">工号</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;firstName;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;lastName;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Employee(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;iworkNo,</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;cfirstName,</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;clastName);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Employee();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;Show();</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">显示员工信息</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;Salary()</span><span style="COLOR: #000000">=</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 src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;ModifySpecial()</span><span style="COLOR: #000000">=</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 src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;Modify(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;id);<br><img 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;RworkNo(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;workno);</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">工号配对</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top></span><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000">;</span></div>
<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_0_66_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_66_Open_Text.style.display='none'; Codehighlighter1_0_66_Closed_Image.style.display='inline'; Codehighlighter1_0_66_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_0_66_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_0_66_Closed_Text.style.display='none'; Codehighlighter1_0_66_Open_Image.style.display='inline'; Codehighlighter1_0_66_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><span id=Codehighlighter1_0_66_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</span><span id=Codehighlighter1_0_66_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">***************************<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>*&nbsp;&nbsp;&nbsp;工厂类<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>***************************</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Factory<br><img id=Codehighlighter1_83_519_Open_Image onclick="this.style.display='none'; Codehighlighter1_83_519_Open_Text.style.display='none'; Codehighlighter1_83_519_Closed_Image.style.display='inline'; Codehighlighter1_83_519_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_83_519_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_83_519_Closed_Text.style.display='none'; Codehighlighter1_83_519_Open_Image.style.display='inline'; Codehighlighter1_83_519_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_83_519_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_83_519_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;factoryName;<br><img 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;&nbsp;employeeNum;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">包括老板</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;Employee</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;pEmployee[</span><span style="COLOR: #000000">1000</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><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Factory(</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;cfactoryName);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Factory();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;AddWorker(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;id);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">增加一个员工</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;DeleteWorker(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;workno);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">删除一个员工</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;ModifyWorker(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;workno);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">修改员工信息</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;ShowInfo();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">显示员工信息</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;TotalSalary();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">计算总工资</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;HighSalary();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">最高工资</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;LowSalary();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">最低工资</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;AverageSalary();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">平均工资</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top></span><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000">;</span></div>
<br>欢迎下载,提供建议或意见!有很多不尽人意的地方!<a href="http://www.cppblog.com/Files/zytoftuncun/pro2.rar"><span style="COLOR: red"><u>源代码下载</u></span></a>最好给出问题的提示性解决方法额!<br><br>选项输入字母而不是数字会出现循环,可以通过char-'0'来解决,但似乎很麻烦,有更好的方法吗?<br>周波同学这样设计<br>RunMode _Mode;<br>/*判断*/<br>switch(_Mode){<br>&nbsp; case ModifyWorkerNumber :<br>}<br>俺觉得不错！采用<br></span>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/28149.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-07-16 21:17 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/07/16/28149.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>再议数组长度－－关于数组的引用</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/06/21/26751.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Thu, 21 Jun 2007 04:19:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/06/21/26751.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/26751.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/06/21/26751.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/26751.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/26751.html</trackback:ping><description><![CDATA[<p>以前写过一篇关于<a href="http://www.cppblog.com/zytoftuncun/archive/2007/03/08/19462.html">数组长度</a>的文章，经过某位好友的指点，知道了新的解决方法了</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"><img id=Codehighlighter1_0_307_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_307_Open_Text.style.display='none'; Codehighlighter1_0_307_Closed_Image.style.display='inline'; Codehighlighter1_0_307_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_0_307_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_0_307_Closed_Text.style.display='none'; Codehighlighter1_0_307_Open_Image.style.display='inline'; Codehighlighter1_0_307_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><span id=Codehighlighter1_0_307_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">/**/</span><span id=Codehighlighter1_0_307_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">******************************************<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>T&nbsp;*a[n]和T&nbsp;(*a)[n]的区别<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>---------<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;*a[n]&nbsp;&nbsp;&nbsp;数组内存放n个T型指针<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;(*a)[n]&nbsp;存放n个T型元素的数组<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指针a指向这个数组//a为二级指针<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>---------------------------------------<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>T&nbsp;&amp;a[n]与T&nbsp;(&amp;a)[n]的区别<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>---------<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;&amp;a[n]&nbsp;&nbsp;&nbsp;[退化为指针]<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;(&amp;a)[n]&nbsp;存放n个T型元素的数组的引用<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>*******************************************</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;<br><img 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 src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;insertsort(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">a)[</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">])</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">防止了指针退化</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_390_676_Open_Image onclick="this.style.display='none'; Codehighlighter1_390_676_Open_Text.style.display='none'; Codehighlighter1_390_676_Closed_Image.style.display='inline'; Codehighlighter1_390_676_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_390_676_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_390_676_Closed_Text.style.display='none'; Codehighlighter1_390_676_Open_Image.style.display='inline'; Codehighlighter1_390_676_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_390_676_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_390_676_Open_Text><span style="COLOR: #000000">{<br><img 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;j,&nbsp;key;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;&nbsp;i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(a)</span><span style="COLOR: #000000">/</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">);&nbsp;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_459_656_Open_Image onclick="this.style.display='none'; Codehighlighter1_459_656_Open_Text.style.display='none'; Codehighlighter1_459_656_Closed_Image.style.display='inline'; Codehighlighter1_459_656_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_459_656_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_459_656_Closed_Text.style.display='none'; Codehighlighter1_459_656_Open_Image.style.display='inline'; Codehighlighter1_459_656_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_459_656_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_459_656_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;a[i];<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;(a[j]</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">key&nbsp;</span><span style="COLOR: #000000">&amp;&amp;</span><span style="COLOR: #000000">&nbsp;j</span><span style="COLOR: #000000">&gt;=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_557_627_Open_Image onclick="this.style.display='none'; Codehighlighter1_557_627_Open_Text.style.display='none'; Codehighlighter1_557_627_Closed_Image.style.display='inline'; Codehighlighter1_557_627_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_557_627_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_557_627_Closed_Text.style.display='none'; Codehighlighter1_557_627_Open_Image.style.display='inline'; Codehighlighter1_557_627_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_557_627_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_557_627_Open_Text><span style="COLOR: #000000">{<br><img 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;&nbsp;&nbsp;a[j</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;a[j];<br><img 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;&nbsp;&nbsp;j</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[j</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;key;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&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 src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;<br><img 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_692_883_Open_Image onclick="this.style.display='none'; Codehighlighter1_692_883_Open_Text.style.display='none'; Codehighlighter1_692_883_Closed_Image.style.display='inline'; Codehighlighter1_692_883_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_692_883_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_692_883_Closed_Text.style.display='none'; Codehighlighter1_692_883_Open_Image.style.display='inline'; Codehighlighter1_692_883_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_692_883_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_692_883_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_710_750_Open_Image onclick="this.style.display='none'; Codehighlighter1_710_750_Open_Text.style.display='none'; Codehighlighter1_710_750_Closed_Image.style.display='inline'; Codehighlighter1_710_750_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_710_750_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_710_750_Closed_Text.style.display='none'; Codehighlighter1_710_750_Open_Image.style.display='inline'; Codehighlighter1_710_750_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;a[</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_710_750_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_710_750_Open_Text><span style="COLOR: #000000">{&nbsp;</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">6</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">9</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">5</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">8</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">6</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">8</span><span style="COLOR: #000000">&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;insertsort(a);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;&nbsp;i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(a)</span><span style="COLOR: #000000">/</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">);&nbsp;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">a[i]</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">\t</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;system(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">pause</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img 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">(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<br>但必需知道数组的长度，int(&amp;a)[10]中的10必需说明！所以如果未知数组长度，必需先要求得！<br>&nbsp;再次受高手指点，使用模版解决了n传递的问题<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">template</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;T,</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;n</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>T&nbsp;insertsort(T&nbsp;(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">a)[n])</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">防止了指针退化</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_57_332_Open_Image onclick="this.style.display='none'; Codehighlighter1_57_332_Open_Text.style.display='none'; Codehighlighter1_57_332_Closed_Image.style.display='inline'; Codehighlighter1_57_332_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_57_332_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_57_332_Closed_Text.style.display='none'; Codehighlighter1_57_332_Open_Image.style.display='inline'; Codehighlighter1_57_332_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_57_332_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_57_332_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;j</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">T();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;key</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">T();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;&nbsp;i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">n;&nbsp;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_115_312_Open_Image onclick="this.style.display='none'; Codehighlighter1_115_312_Open_Text.style.display='none'; Codehighlighter1_115_312_Closed_Image.style.display='inline'; Codehighlighter1_115_312_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_115_312_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_115_312_Closed_Text.style.display='none'; Codehighlighter1_115_312_Open_Image.style.display='inline'; Codehighlighter1_115_312_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_115_312_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_115_312_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;a[i];<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;(a[j]</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">key&nbsp;</span><span style="COLOR: #000000">&amp;&amp;</span><span style="COLOR: #000000">&nbsp;j</span><span style="COLOR: #000000">&gt;=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_213_283_Open_Image onclick="this.style.display='none'; Codehighlighter1_213_283_Open_Text.style.display='none'; Codehighlighter1_213_283_Closed_Image.style.display='inline'; Codehighlighter1_213_283_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_213_283_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_213_283_Closed_Text.style.display='none'; Codehighlighter1_213_283_Open_Image.style.display='inline'; Codehighlighter1_213_283_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_213_283_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_213_283_Open_Text><span style="COLOR: #000000">{<br><img 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;&nbsp;&nbsp;a[j</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;a[j];<br><img 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;&nbsp;&nbsp;j</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[j</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;key;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;T();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">&nbsp;</span></div>
我要继续努力ing，好多知识有待熟悉额
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/26751.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-06-21 12:19 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/06/21/26751.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>回车与换行的区别</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/04/21/22463.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Sat, 21 Apr 2007 03:45:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/04/21/22463.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/22463.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/04/21/22463.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/22463.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/22463.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp; 从来没想过这些细节问题，但看了<a style="FONT-WEIGHT: bold; FONT-SIZE: medium; TEXT-TRANSFORM: uppercase; COLOR: #ff00ff; TEXT-DECORATION: underline" href="http://blog.csdn.net/zweily/" target=_blank>Zweily</a>的第一篇小品文，发现原来还有这样的差别，于是以现有知识写了个程序，不管他的什么mfc。</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"><img 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 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 src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_51_268_Open_Image onclick="this.style.display='none'; Codehighlighter1_51_268_Open_Text.style.display='none'; Codehighlighter1_51_268_Closed_Image.style.display='inline'; Codehighlighter1_51_268_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_51_268_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_51_268_Closed_Text.style.display='none'; Codehighlighter1_51_268_Open_Image.style.display='inline'; Codehighlighter1_51_268_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main()</span><span id=Codehighlighter1_51_268_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_51_268_Open_Text><span style="COLOR: #000000">{<br><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img 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">\n</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img 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">\r</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img 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">\n</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img 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">\r</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;system(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">dir&gt;out.txt</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img 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 src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>结果输出三行weicong<br>怎么回事呢？原来回车符只是把光标移到当前行的最前面，<br>所以前两个就等于只有一个，<br>三四个也等于一个<br>。<br>这样的话'\r'后的weicong覆盖了前面的weicong。就输出了三个。<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"><span style="COLOR: #008080">&nbsp;1</span><img 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></span><span style="COLOR: #008080">&nbsp;2</span><span style="COLOR: #000000"><img 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></span><span style="COLOR: #008080">&nbsp;3</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">&nbsp;4</span><span style="COLOR: #000000"><img id=Codehighlighter1_51_288_Open_Image onclick="this.style.display='none'; Codehighlighter1_51_288_Open_Text.style.display='none'; Codehighlighter1_51_288_Closed_Image.style.display='inline'; Codehighlighter1_51_288_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_51_288_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_51_288_Closed_Text.style.display='none'; Codehighlighter1_51_288_Open_Image.style.display='inline'; Codehighlighter1_51_288_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main()</span><span id=Codehighlighter1_51_288_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_51_288_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">&nbsp;5</span><span style="COLOR: #000000"><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;6</span><span style="COLOR: #000000"><img 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">\n</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;7</span><span style="COLOR: #000000"><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;8</span><span style="COLOR: #000000"><img 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">\r</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;9</span><span style="COLOR: #000000"><img 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">cong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img 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">\n</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/OutliningIndicators/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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img 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">\r</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img 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">weicong</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;system(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">dir&nbsp;&gt;&nbsp;out.txt</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;system(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">pause</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img 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></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;}</span></span></div>
<p>第二行显示congong,覆盖的猜测是正确的。<br><span style="FONT-FAMILY: Comic Sans MS"><strong style="FONT-SIZE: 14pt; FONT-FAMILY: Comic Sans MS"><br>额外知识：</strong><br></span>Chr(13)回车符<br>Chr(10)换行符<br>（感觉vb里用到过）<br>&#8217;\n&#8217;是换行符，&#8217;\r&#8217;是回车符。它们相对应的ASCII码分别是：0x0A和0x0D。</p>
<p>&nbsp;</p>
<p><br>&nbsp;</p>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/22463.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-04-21 11:45 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/04/21/22463.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c++草稿记录</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/04/14/redirect.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Sat, 14 Apr 2007 05:52:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/04/14/redirect.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/21856.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/04/14/redirect.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/21856.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/21856.html</trackback:ping><description><![CDATA[<p>简单记录：<br>1)了解对象的演化</p>
<p>2)数据的抽象<br>大多数c库都有一组struct和活动在这些struct上的函数，struct相当于一个数据集合，描述一个对象的若干属性<br>关于包含头文件，以及连接可能出现的问题的总结：<br>目标文件中函数可能参数类型不符合，编译器讲进行类型转换<br>在栈中放入int值将转换成float值等情况，如果这将改变栈中变量的值就糟糕了<br>&nbsp;关于makefile文件，描述文件间的关系<br>将变量属于struct的特性引申到函数（解决了各种结构函数名字相抵触的悲剧），那么类就出现了！这样函数所作的事情只与解决问题有关，与运行机制无关（其实计算机替我们做了）。但定义函数时还是要明确指出函数属于哪个结构, 使用范围分解运算符（::），^_^声明后才能使用，相当于编译器进行有效性检查，类似xml文件的dtd，解析器对他的有效性检查。注：system("pause");需要头文件iostream，管道功能？<br>抽象数据类型和内置类型是一样的，只是调用方式不同。相当于给对象发送消息。</p>
<p>3)隐藏实现<br>private public protected<br>嵌套友元:<br>1声明嵌套的struct<br>2声明全局范围的一个友元<br>注:struct与friend声明分开</p>
<p>4)句柄类 一个结构体，结构体的实现部分在另一个文件中，对于产生一个指针来说已经足够了</p>
<p>5)初始化与清除<br>非本地goto语句也会调用析构函数，用c语言库中的setjmp()和longjmp()函数可以不引发析构函数的调用</p>
<p>空间分配</p>
<p>函数重载<br>语言的冗余，缺省参数<br>1只有参数列表的后部参数才可是缺省的<br>2开始使用缺省参数，那么它后面的所有参数是缺省的</p>
<p>void f(int x,int,float y)<br>x,y都能被引用，但是中间的参数就不可以，因为它没有名字。如果函数体内没有使用中间的参数那么编译器不会发出警告，如果中间的参数有名字就会发出警告。表明一个逻辑错误</p>
<p>6）位向量类<br>操作符重载缺省参数例子<br><br>输出重定向问题：<br>函数名: freopen <br>功 能: 替换一个流 <br>用 法: FILE *freopen(char *filename, char *type, FILE *stream); <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"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">stdio.h</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main(</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">)&nbsp;<br><img id=Codehighlighter1_37_326_Open_Image onclick="this.style.display='none'; Codehighlighter1_37_326_Open_Text.style.display='none'; Codehighlighter1_37_326_Closed_Image.style.display='inline'; Codehighlighter1_37_326_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_37_326_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_37_326_Closed_Text.style.display='none'; Codehighlighter1_37_326_Open_Image.style.display='inline'; Codehighlighter1_37_326_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_37_326_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_37_326_Open_Text><span style="COLOR: #000000">{&nbsp;<br><img id=Codehighlighter1_40_79_Open_Image onclick="this.style.display='none'; Codehighlighter1_40_79_Open_Text.style.display='none'; Codehighlighter1_40_79_Closed_Image.style.display='inline'; Codehighlighter1_40_79_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_40_79_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_40_79_Closed_Text.style.display='none'; Codehighlighter1_40_79_Open_Image.style.display='inline'; Codehighlighter1_40_79_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span id=Codehighlighter1_40_79_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">/**/</span><span id=Codehighlighter1_40_79_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">&nbsp;redirect&nbsp;standard&nbsp;output&nbsp;to&nbsp;a&nbsp;file&nbsp;</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(freopen(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">OUTPUT.FIL</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">w</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,&nbsp;stdout)&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;NULL)&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>fprintf(stderr,&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">error&nbsp;redirecting&nbsp;stdout\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_181_215_Open_Image onclick="this.style.display='none'; Codehighlighter1_181_215_Open_Text.style.display='none'; Codehighlighter1_181_215_Closed_Image.style.display='inline'; Codehighlighter1_181_215_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_181_215_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_181_215_Closed_Text.style.display='none'; Codehighlighter1_181_215_Open_Image.style.display='inline'; Codehighlighter1_181_215_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span id=Codehighlighter1_181_215_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">/**/</span><span id=Codehighlighter1_181_215_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">&nbsp;this&nbsp;output&nbsp;will&nbsp;go&nbsp;to&nbsp;a&nbsp;file&nbsp;</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">This&nbsp;will&nbsp;go&nbsp;into&nbsp;a&nbsp;file.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_257_294_Open_Image onclick="this.style.display='none'; Codehighlighter1_257_294_Open_Text.style.display='none'; Codehighlighter1_257_294_Closed_Image.style.display='inline'; Codehighlighter1_257_294_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_257_294_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_257_294_Closed_Text.style.display='none'; Codehighlighter1_257_294_Open_Image.style.display='inline'; Codehighlighter1_257_294_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span id=Codehighlighter1_257_294_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">/**/</span><span id=Codehighlighter1_257_294_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">&nbsp;close&nbsp;the&nbsp;standard&nbsp;output&nbsp;stream&nbsp;</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>fclose(stdout);&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<br>经过测试还是很管用<br>但是比如我编译一个cpp程序<br>如何捕获dos窗口的出错信息呢？<br>望高手指教
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/21856.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-04-14 13:52 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/04/14/redirect.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>袖珍c库[c++编程思想学习]</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/03/30/20946.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Fri, 30 Mar 2007 08:20:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/03/30/20946.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/20946.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/03/30/20946.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/20946.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/20946.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 设计一个可以存放任何类型变量，可存放大小运行时确定的类似数组的变量类型-------学习c++编程思想Lib.h定义了一些数据类型和操作函数的声明/**//*****************************\example&nbsp;c&nbsp;librarypage24&nbsp;in&nbsp;Thinking&nbsp;in&nbsp;c++array&nbsp;like&nb...&nbsp;&nbsp;<a href='http://www.cppblog.com/zytoftuncun/archive/2007/03/30/20946.html'>阅读全文</a><img src ="http://www.cppblog.com/zytoftuncun/aggbug/20946.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-03-30 16:20 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/03/30/20946.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> 整型数组长度问题</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/03/08/19462.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Thu, 08 Mar 2007 13:42:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/03/08/19462.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/19462.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/03/08/19462.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/19462.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/19462.html</trackback:ping><description><![CDATA[
		<p>求解整型数组长度可以使用sizeof(a)/sizeof(int)，当今天我编写插入排序时遇到个问题，代码如下：</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">
				<img 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 src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">using</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">namespace</span>
				<span style="COLOR: #000000"> std;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> insertsort(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> a[])<br /><img id="Codehighlighter1_64_328_Open_Image" onclick="this.style.display='none'; Codehighlighter1_64_328_Open_Text.style.display='none'; Codehighlighter1_64_328_Closed_Image.style.display='inline'; Codehighlighter1_64_328_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_64_328_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_64_328_Closed_Text.style.display='none'; Codehighlighter1_64_328_Open_Image.style.display='inline'; Codehighlighter1_64_328_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_64_328_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.cppblog.com/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_64_328_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> j,key;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(a)</span>
						<span style="COLOR: #000000">/</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">);i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">) </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">这里却不能正确得到数组长度，单步执行时发现for循环未执行</span>
						<span style="COLOR: #008000">
								<br />
								<img id="Codehighlighter1_162_311_Open_Image" onclick="this.style.display='none'; Codehighlighter1_162_311_Open_Text.style.display='none'; Codehighlighter1_162_311_Closed_Image.style.display='inline'; Codehighlighter1_162_311_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_162_311_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_162_311_Closed_Text.style.display='none'; Codehighlighter1_162_311_Open_Image.style.display='inline'; Codehighlighter1_162_311_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />
						</span>
						<span style="COLOR: #000000">    </span>
						<span id="Codehighlighter1_162_311_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.cppblog.com/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_162_311_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        key</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">a[i];<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        j</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">i</span>
								<span style="COLOR: #000000">-</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000">(a[j]</span>
								<span style="COLOR: #000000">&gt;</span>
								<span style="COLOR: #000000">key</span>
								<span style="COLOR: #000000">&amp;&amp;</span>
								<span style="COLOR: #000000">j</span>
								<span style="COLOR: #000000">&gt;=</span>
								<span style="COLOR: #000000">0</span>
								<span style="COLOR: #000000">)<br /><img id="Codehighlighter1_235_285_Open_Image" onclick="this.style.display='none'; Codehighlighter1_235_285_Open_Text.style.display='none'; Codehighlighter1_235_285_Closed_Image.style.display='inline'; Codehighlighter1_235_285_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_235_285_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_235_285_Closed_Text.style.display='none'; Codehighlighter1_235_285_Open_Image.style.display='inline'; Codehighlighter1_235_285_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span id="Codehighlighter1_235_285_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.cppblog.com/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_235_285_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />           a[j</span>
										<span style="COLOR: #000000">+</span>
										<span style="COLOR: #000000">1</span>
										<span style="COLOR: #000000">]</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">a[j];<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />           j</span>
										<span style="COLOR: #000000">--</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        a[j</span>
								<span style="COLOR: #000000">+</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">]</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">key;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> main()<br /><img id="Codehighlighter1_342_525_Open_Image" onclick="this.style.display='none'; Codehighlighter1_342_525_Open_Text.style.display='none'; Codehighlighter1_342_525_Closed_Image.style.display='inline'; Codehighlighter1_342_525_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_342_525_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_342_525_Closed_Text.style.display='none'; Codehighlighter1_342_525_Open_Image.style.display='inline'; Codehighlighter1_342_525_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_342_525_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.cppblog.com/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_342_525_Open_Text">
						<span style="COLOR: #000000">{   <br /><img id="Codehighlighter1_359_379_Open_Image" onclick="this.style.display='none'; Codehighlighter1_359_379_Open_Text.style.display='none'; Codehighlighter1_359_379_Closed_Image.style.display='inline'; Codehighlighter1_359_379_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_359_379_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_359_379_Closed_Text.style.display='none'; Codehighlighter1_359_379_Open_Image.style.display='inline'; Codehighlighter1_359_379_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> a[]</span>
						<span style="COLOR: #000000">=</span>
						<span id="Codehighlighter1_359_379_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.cppblog.com/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_359_379_Open_Text">
								<span style="COLOR: #000000">{</span>
								<span style="COLOR: #000000">2</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">6</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">9</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">3</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">5</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">8</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">6</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">3</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">8</span>
								<span style="COLOR: #000000">}</span>
						</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    insertsort(a);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(a)</span>
						<span style="COLOR: #000000">/</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">);i</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 src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />
						</span>
						<span style="COLOR: #000000">        cout</span>
						<span style="COLOR: #000000">&lt;&lt;</span>
						<span style="COLOR: #000000">a[i]</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 /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    system(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">pause</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>
		<p>搜集资料得到的答案是，数组传入函数时，传入的是指针，并不是我想的那样拷贝副本，<br />所以此时sizeof(a)/sizeof(int)等于1，条件不符合，跳出循环。<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">
				<img 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 src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">using</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">namespace</span>
				<span style="COLOR: #000000"> std;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> insertsort(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> a[],</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> n)<br /><img id="Codehighlighter1_70_282_Open_Image" onclick="this.style.display='none'; Codehighlighter1_70_282_Open_Text.style.display='none'; Codehighlighter1_70_282_Closed_Image.style.display='inline'; Codehighlighter1_70_282_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_70_282_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_70_282_Closed_Text.style.display='none'; Codehighlighter1_70_282_Open_Image.style.display='inline'; Codehighlighter1_70_282_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_70_282_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.cppblog.com/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_70_282_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> j,key;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #000000">n;i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">)<br /><img id="Codehighlighter1_116_265_Open_Image" onclick="this.style.display='none'; Codehighlighter1_116_265_Open_Text.style.display='none'; Codehighlighter1_116_265_Closed_Image.style.display='inline'; Codehighlighter1_116_265_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_116_265_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_116_265_Closed_Text.style.display='none'; Codehighlighter1_116_265_Open_Image.style.display='inline'; Codehighlighter1_116_265_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span id="Codehighlighter1_116_265_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.cppblog.com/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_116_265_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        key</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">a[i];<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        j</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">i</span>
								<span style="COLOR: #000000">-</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000">(a[j]</span>
								<span style="COLOR: #000000">&gt;</span>
								<span style="COLOR: #000000">key</span>
								<span style="COLOR: #000000">&amp;&amp;</span>
								<span style="COLOR: #000000">j</span>
								<span style="COLOR: #000000">&gt;=</span>
								<span style="COLOR: #000000">0</span>
								<span style="COLOR: #000000">)<br /><img id="Codehighlighter1_189_239_Open_Image" onclick="this.style.display='none'; Codehighlighter1_189_239_Open_Text.style.display='none'; Codehighlighter1_189_239_Closed_Image.style.display='inline'; Codehighlighter1_189_239_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_189_239_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_189_239_Closed_Text.style.display='none'; Codehighlighter1_189_239_Open_Image.style.display='inline'; Codehighlighter1_189_239_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span id="Codehighlighter1_189_239_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.cppblog.com/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_189_239_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />           a[j</span>
										<span style="COLOR: #000000">+</span>
										<span style="COLOR: #000000">1</span>
										<span style="COLOR: #000000">]</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">a[j];<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />           j</span>
										<span style="COLOR: #000000">--</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        a[j</span>
								<span style="COLOR: #000000">+</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">]</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">key;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> main()<br /><img id="Codehighlighter1_296_477_Open_Image" onclick="this.style.display='none'; Codehighlighter1_296_477_Open_Text.style.display='none'; Codehighlighter1_296_477_Closed_Image.style.display='inline'; Codehighlighter1_296_477_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_296_477_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_296_477_Closed_Text.style.display='none'; Codehighlighter1_296_477_Open_Image.style.display='inline'; Codehighlighter1_296_477_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_296_477_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.cppblog.com/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_296_477_Open_Text">
						<span style="COLOR: #000000">{   <br /><img id="Codehighlighter1_313_333_Open_Image" onclick="this.style.display='none'; Codehighlighter1_313_333_Open_Text.style.display='none'; Codehighlighter1_313_333_Closed_Image.style.display='inline'; Codehighlighter1_313_333_Closed_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_313_333_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_313_333_Closed_Text.style.display='none'; Codehighlighter1_313_333_Open_Image.style.display='inline'; Codehighlighter1_313_333_Open_Text.style.display='inline';" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> a[]</span>
						<span style="COLOR: #000000">=</span>
						<span id="Codehighlighter1_313_333_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.cppblog.com/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_313_333_Open_Text">
								<span style="COLOR: #000000">{</span>
								<span style="COLOR: #000000">2</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">6</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">9</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">3</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">5</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">8</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">6</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">3</span>
								<span style="COLOR: #000000">,</span>
								<span style="COLOR: #000000">8</span>
								<span style="COLOR: #000000">}</span>
						</span>
						<span style="COLOR: #000000">,n;<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    n</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(a)</span>
						<span style="COLOR: #000000">/</span>
						<span style="COLOR: #0000ff">sizeof</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">));<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    insertsort(a,n);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #000000">n;i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">)<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />        cout</span>
						<span style="COLOR: #000000">&lt;&lt;</span>
						<span style="COLOR: #000000">a[i]</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 /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    system(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">pause</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>
		<p>不知道各位高手有什么好办法，小弟谢了！<br />              </p>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/19462.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-03-08 21:42 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/03/08/19462.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>变量名的困惑</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/01/24/17965.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Wed, 24 Jan 2007 10:57:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/01/24/17965.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/17965.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/01/24/17965.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/17965.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/17965.html</trackback:ping><description><![CDATA[<p><span id=txtObj_0>《算法导论》说用于表示数组或对象的变量被看作是指向表示或对象数据的一个指针，对于某个对象x的所有域f，赋值y&lt;--x，就是f[y]=f[x]。若f[x]&lt;--3,则不仅是f[x]=3,同时f[y]=3，换言之在赋值y&lt;--x后x，y指向同一个对象。<br>#include&lt;iostream&gt;<br>using namespace std;<br>int main(){<br>int a=3,b=0;<br>b=a;<br>a++;<br>cout&lt;&lt;a&lt;&lt;'\t'&lt;&lt;b&lt;&lt;endl;<br>return(0);<br>}//输出的是4 3。他们并不是表示数组或对象的变量。<br><br>#include&lt;iostream&gt;<br>using namespace std;<br>class object{<br>public:<br>&nbsp;&nbsp;&nbsp;&nbsp;int var;<br>&nbsp;&nbsp;&nbsp;&nbsp;object(int value){var=value;}<br>};<br>int main(){<br>&nbsp;&nbsp;&nbsp;&nbsp;object a(3),b(0);<br>&nbsp;&nbsp;&nbsp;&nbsp;b=a;<br>&nbsp;&nbsp;&nbsp;&nbsp;a.var=4;<br>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;a.var&lt;&lt;'\t'&lt;&lt;b.var&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;return(0);<br>}//输出4 3与说法矛盾<br><br>#include&lt;iostream&gt;<br>using namespace std;<br>int main(){<br>&nbsp;&nbsp;&nbsp;&nbsp;int a[3],b[3];<br>&nbsp;&nbsp;&nbsp;&nbsp;a[0]=1;<br>&nbsp;&nbsp;&nbsp;&nbsp;a[1]=2;<br>&nbsp;&nbsp;&nbsp;&nbsp;a[2]=3;<br>&nbsp;&nbsp;&nbsp;&nbsp;b=a;//数组不能赋值<br>&nbsp;&nbsp;&nbsp;&nbsp;for(int i=0;i&lt;3;++i)<br>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;a[i]&lt;&lt;'\t'&lt;&lt;b[i]&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;return(0);<br>}<br><br>那么请问这两个例子应该如何举<br></span><font style="BACKGROUND-COLOR: #f5f5dc" color=#a52a2a size=2>回复人: 阿荣 (状元)&nbsp; 2007-1-24 17:52:12 <br>它说得那些只是在某些特定环境下的理论效果,并不能在所有语言中应用.它这里所说的概念,基本上对应C++的指针,和你理解的不一样<br>回复人: 阿荣 (状元)&nbsp; 2007-1-24 17:53:04 <br>个人感觉,他对对象的定义对于C++而言是错误的<br>回复人: 周星星 (榜眼)&nbsp; 2007-1-24 17:55:37 <br>也许说引用更恰当<br>&nbsp;回复人: 阿荣 (状元)&nbsp; 2007-1-24 17:59:24 <br>实际上无论引用和指针都无法严格和他对应.我不清楚讲算法的为什么来搞这种定义?完全无法和所有语言对应<br>回复人: szhoftuncun (书童)&nbsp; 2007-1-24 18:23:49 <br>Re:也许说引用更恰当<br>举个例子，我不太明白你们说什么？<br>回复人: szhoftuncun (书童)&nbsp; 2007-1-24 20:02:05 <br>Re:变量名的问题<br>参数用值传递的方式传给过程：过程接收参数的副本，若它对某个参数赋值，则这个过程对调用过程（1.这里是指调用过程的那个过程吗？我想是的，也应该是这样的）是不可见的。当传递一个对象时，只时拷贝指向对象的指针（2.不解决上面变量名的问题，那这里又有问题了），而不拷贝其各个域（3.这个域指的是什么？）。如：x&lt;--y对调用过程时不可见的，但赋值f[x]&lt;--3是可见的。<br>回复人: 阿荣 (状元)&nbsp; 2007-1-24 23:35:03 <br>这么晦涩而且也不怎么通用的书还是不要这么认真的读了<br>回复人: 阿荣 (状元)&nbsp; 2007-1-24 23:36:28 <br>这种晦涩的理论不适于学习语言，你不要指望能用什么例子来描述你说的话，它上面的话不完全适用于C＋＋<br>回复人: 阿荣 (状元)&nbsp; 2007-1-24 23:38:02 <br>个人建议你立刻换书，<br>回复人: hpho (秀才)&nbsp; 2007-1-24 23:53:10 <br>若用JAVA的话是说得通的.<br>C++是分对象实体和指向对象的指针.所以会有深浅拷贝. <br>回复人: 周星星 (榜眼)&nbsp; 2007-1-25 9:19:59 <br>因为JAVA中一切都是指针<br>回复人: Iforgot (秀才)&nbsp; 2007-1-25 9:21:22 <br>不能说指针，最好说引用，或引用和指针的结合体。——java里关于垃圾收集机制里有一堆关于它的引用的概念。<br>回复人: 周星星 (榜眼)&nbsp; 2007-1-25 9:27:29 <br>说引用也说不过去，反正就那个意思<br>回复人: szhoftuncun (书童)&nbsp; 2007-1-25 9:29:20 <br>Re:这种晦涩的理论不适于学习语言，你不要指望能用什么例子来描述你说的话，它上面的话不完全适用于C＋＋<br>呵呵，不是为了学语言，就是为了学算法，只不过想用语言来验证一下，多谢各位赐教。分就给星星吧<br>回复人: 阿荣 (状元)&nbsp; 2007-1-25 10:04:47 <br>你给了?<br>回复人: szhoftuncun (书童)&nbsp; 2007-1-25 10:13:05 <br>Re:你给了?<br>这个给分系统不太会用，vchelp网的比较清楚，呵呵，不知道给谁<br></font>参数用值传递的方式传给过程：过程接收参数的副本，若它对某个参数赋值，则这个过程对调用过程（1.这里是指调用过程的那个过程吗？我想是的，也应该是这样的）是不可见的。当传递一个对象时，只时拷贝指向对象的指针（2.不解决上面变量名的问题，那这里又有问题了），而不拷贝其各个域（3.这个域指的是什么？）。如：x&lt;--y对调用过程时不可见的，但赋值f[x]&lt;--3是可见的。<br><br></p>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/17965.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-01-24 18:57 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/01/24/17965.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>匈牙利表示法前缀</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/01/21/17857.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Sun, 21 Jan 2007 05:58:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/01/21/17857.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/17857.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/01/21/17857.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/17857.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/17857.html</trackback:ping><description><![CDATA[
		<p>虽然没有必要死记硬背，但了解一下也是应该的，顺便纪念一下伟大的Charles Simonyi<br /></p>
		<table cellpadding="0" border="1">
				<tbody>
						<tr>
								<td>
										<p align="center">
												<b>前缀</b>
										</p>
								</td>
								<td>
										<p align="center">
												<b>数据型态</b>
										</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>c</p>
								</td>
								<td>
										<p>char或WCHAR或TCHAR</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>by</p>
								</td>
								<td>
										<p>BYTE （无正负号字符）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>n</p>
								</td>
								<td>
										<p>short</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>i</p>
								</td>
								<td>
										<p>int</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>x, y</p>
								</td>
								<td>
										<p>int分别用作x坐标和y坐标</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>cx, cy</p>
								</td>
								<td>
										<p>int分别用作x长度和y长度；C代表「计数器」</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>b或f</p>
								</td>
								<td>
										<p>BOOL (int)；f代表「旗标」</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>w</p>
								</td>
								<td>
										<p>WORD （无正负号短整数）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>l</p>
								</td>
								<td>
										<p>LONG （长整数）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>dw</p>
								</td>
								<td>
										<p>DWORD （无正负号长整数）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>fn</p>
								</td>
								<td>
										<p>function（函数）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>s</p>
								</td>
								<td>
										<p>string（字符串）</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>sz</p>
								</td>
								<td>
										<p>以字节值0结尾的字符串</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>h</p>
								</td>
								<td>
										<p>句柄</p>
								</td>
						</tr>
						<tr>
								<td>
										<p>p</p>
								</td>
								<td>
										<p>指标</p>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/17857.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-01-21 13:58 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/01/21/17857.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>小游戏</title><link>http://www.cppblog.com/zytoftuncun/archive/2007/01/17/17731.html</link><dc:creator>AIBPXTSHMF</dc:creator><author>AIBPXTSHMF</author><pubDate>Wed, 17 Jan 2007 12:32:00 GMT</pubDate><guid>http://www.cppblog.com/zytoftuncun/archive/2007/01/17/17731.html</guid><wfw:comment>http://www.cppblog.com/zytoftuncun/comments/17731.html</wfw:comment><comments>http://www.cppblog.com/zytoftuncun/archive/2007/01/17/17731.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zytoftuncun/comments/commentRss/17731.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zytoftuncun/services/trackbacks/17731.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp; 学习c++也有一段日子了，从毫无头绪到现在刚刚入门已经过去将近一年了。不知是学校老师太差还是自己不够积极，总觉得毫无长进！常在网上加些同样不想在学校仅仅是混个毕业的朋友，没事讨论讨论（身边大多都是想混混日子的）。<br>&nbsp;&nbsp;井字游戏其实原理相当简单，九个格子，不管横竖还对角线上的三个子全是一方的，这方九赢的game。<br>#include&lt;iostream&gt;<br>using namespace std;<br>class line{<br>&nbsp;private:<br>&nbsp;&nbsp;char box[9];<br>&nbsp;public:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int step,pps,temp;&nbsp;&nbsp;//标志量控制条件<br>&nbsp;&nbsp;int setline(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //构造函数用于下棋过程中显示每个位置的数字，方便弈者选择<br>&nbsp;&nbsp;for(int i=0;i&lt;9;++i)<br>&nbsp;&nbsp;&nbsp;box[i]=i+'1';&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//将数字的ascii码放入数组，这样解决了char类型数组中放数字的矛盾<br>&nbsp;&nbsp;return(0);<br>&nbsp;}<br>&nbsp;int check(int);<br>&nbsp;&nbsp;&nbsp; int showTable();<br>&nbsp;int showChange();<br>&nbsp;int winLost();<br>&nbsp;int continueAbort();<br>};<br><br>//用于每次开盘时显示棋盘<br>int line::showTable(){<br>&nbsp;cout&lt;&lt;"&nbsp;&nbsp; *************"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; | 1 | 2 | 3 |"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; -------------"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; | 4 | 5 | 6 |"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; -------------"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; | 7 | 8 | 9 |"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp; cout&lt;&lt;"&nbsp;&nbsp; *************"&lt;&lt;endl;<br>&nbsp;return(0);<br>}</p>
<p>//每步棋盘上棋子的变化<br>int line::showChange(){<br>&nbsp;int num=0;<br>&nbsp;cin&gt;&gt;num;<br>&nbsp;--num;<br>&nbsp;while(box[num]=='a'||box[num]=='b'||num&lt;0||num&gt;8){<br>&nbsp;&nbsp;cout&lt;&lt;"\nThis number have been chosen!please take another one:&nbsp; ";<br>&nbsp;&nbsp;&nbsp;cin&gt;&gt;num;<br>&nbsp;&nbsp;--num;<br>&nbsp;}<br>&nbsp;if(step==1)box[num]='a';<br>&nbsp;else box[num]='b';<br>&nbsp;cout&lt;&lt;"\n&nbsp;&nbsp;&nbsp; *************"&lt;&lt;endl;<br>&nbsp;for(int i=0,j=0;j&lt;3;++j){<br>&nbsp;cout&lt;&lt;"&nbsp;&nbsp;&nbsp; | "&lt;&lt;box[i]&lt;&lt;" | "&lt;&lt;box[i+1]&lt;&lt;" | "&lt;&lt;box[i+2]&lt;&lt;" |"&lt;&lt;endl;<br>&nbsp;i=i+3;<br>&nbsp;cout&lt;&lt;"&nbsp;&nbsp;&nbsp; *************"&lt;&lt;endl;}<br>&nbsp;winLost();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;每次棋盘变化判断一下输赢<br>&nbsp;return(0);<br>}</p>
<p>//判断输赢条件<br>int line::check(int ch){<br>&nbsp;&nbsp;&nbsp; return((box[0]+box[1]+box[2]==ch||<br>&nbsp;&nbsp;&nbsp; box[0]+box[3]+box[6]==ch||<br>&nbsp;&nbsp;&nbsp; box[0]+box[4]+box[8]==ch||<br>&nbsp;&nbsp;&nbsp; box[3]+box[4]+box[5]==ch||<br>&nbsp;&nbsp;&nbsp; box[7]+box[8]+box[6]==ch||<br>&nbsp;&nbsp;&nbsp; box[2]+box[4]+box[6]==ch||<br>&nbsp;&nbsp;&nbsp; box[1]+box[4]+box[7]==ch||<br>&nbsp;&nbsp;&nbsp; box[2]+box[8]+box[5]==ch));<br>}</p>
<p>// 显示输赢结果，设置pps跳出单次下棋过程，即有一方赢了就结束该轮比赛<br>int line::winLost(){<br>&nbsp;if(check(3*'a')){<br>&nbsp;&nbsp;pps=1;<br>&nbsp;&nbsp;cout&lt;&lt;"player a win the game"&lt;&lt;endl;<br>&nbsp;}<br>&nbsp;else if(check(3*'b')){<br>&nbsp;&nbsp;pps=1;<br>&nbsp;&nbsp;cout&lt;&lt;"player b win the game"&lt;&lt;endl;<br>&nbsp;}<br>return(0);<br>}</p>
<p>// 再来一盘<br>int line::continueAbort(){<br>&nbsp;char pos;<br>&nbsp;cout&lt;&lt;"press c to continue_press anykey to abort"&lt;&lt;endl;<br>&nbsp;cin&gt;&gt;pos;<br>&nbsp;if(pos=='c'){<br>&nbsp;&nbsp;pps=0;<br>&nbsp;&nbsp;temp=0;<br>&nbsp;&nbsp;showTable();<br>&nbsp;&nbsp;setline();<br>&nbsp;&nbsp;return (1);<br>&nbsp;}<br>&nbsp;&nbsp;else return(0);</p>
<p>}</p>
<p>int main(){<br>&nbsp;line player;<br>&nbsp;player.setline();<br>&nbsp;cout&lt;&lt;"let us play the game"&lt;&lt;endl;<br>&nbsp;player.showTable();<br>&nbsp;do<br>&nbsp;{<br>&nbsp;&nbsp;for( int i=0;i&lt;9;++i){<br>&nbsp;&nbsp;&nbsp;if(i%2==0){<br>&nbsp;&nbsp;&nbsp;&nbsp;player.step=1;<br>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"\nplayer a,please choose the number you fit:&nbsp; ";<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;else{<br>&nbsp;&nbsp;&nbsp;&nbsp;player.step=0;<br>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"\nplayer b,please choose the number you fit:&nbsp; ";<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;player.showChange();<br>&nbsp;&nbsp;if(player.pps==1)break;<br>&nbsp;&nbsp;player.temp=i;<br>&nbsp;&nbsp;}<br>&nbsp;&nbsp;if(player.temp==8){<br>&nbsp;&nbsp;&nbsp;cout&lt;&lt;"no one win the game!"&lt;&lt;endl;<br>&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;}<br>&nbsp;}while(player.continueAbort());<br>&nbsp;return (0);<br>&nbsp;}<br>修修补补终于完工，但总让我感觉很差劲：<br>1.能否减少函数<br>2.winLost( )能简化吗<br>3.能使所有变量step和pps放在私有里吗 <br>4.showChange()内调用winLost()导致每下一个子显示no one win the game！<br>ps1：又改了一下，解决了第4个问题。不过又增加了一个标志量和一个函数！有必要减少函数吗？其他问题估计不能解决，除非重新写了。就算完成了吧！<br>ps2：鉴于评论添加了一些注释，原本打算自己学学而已，没想到还有人关注，颇有些惊喜<br><br>4月26日想做个人机对弈，发现了原来代码里平局有错误，遂将temp=9 改成8，这样就解决了平局问题</p>
<img src ="http://www.cppblog.com/zytoftuncun/aggbug/17731.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zytoftuncun/" target="_blank">AIBPXTSHMF</a> 2007-01-17 20:32 <a href="http://www.cppblog.com/zytoftuncun/archive/2007/01/17/17731.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>