﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-*尘埃之地</title><link>http://www.cppblog.com/lazz/</link><description /><language>zh-cn</language><lastBuildDate>Mon, 13 Apr 2026 09:38:07 GMT</lastBuildDate><pubDate>Mon, 13 Apr 2026 09:38:07 GMT</pubDate><ttl>60</ttl><item><title>关于无临时变量的变量值交换的记录 &amp;&amp; 求最大表示数</title><link>http://www.cppblog.com/lazz/archive/2009/06/11/87410.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Thu, 11 Jun 2009 07:15:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/06/11/87410.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/87410.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/06/11/87410.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/87410.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/87410.html</trackback:ping><description><![CDATA[源于无聊, 又再看了复习了下"<span class="Apple-style-span" style="border-collapse: separate; color: #000000; font-family: 'Times New Roman'; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;">不用临时变量进行整型变量</span>交换"<br><br>两种流行方法:<br>(1) 加减减<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">1</span>&nbsp;<span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;AsExchang(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">x,&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">y)<br></span><span style="color: #008080;">2</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">3</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">+</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">4</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">5</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">6</span>&nbsp;<span style="color: #000000;">}<br></span><span style="color: #008080;">7</span>&nbsp;<span style="color: #000000;"></span></div>
<br>(2) 异或<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">1</span>&nbsp;<span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;XorExchang(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">x,&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">y)<br></span><span style="color: #008080;">2</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">3</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">^</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">4</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">^</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">5</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">^</span><span style="color: #000000;">&nbsp;y;<br></span><span style="color: #008080;">6</span>&nbsp;<span style="color: #000000;">}</span></div>
<br>两种方法, 都可以认识是密码学的一部分吧, 只是用加减法来加密, 幼稚且缺乏安全性而已.<br>当然, 异或法在现实中也得变种才能实际应用<br><br>一开始傻傻地联想到方法一是否存在越界问题... //基础知识瞬间薄弱化...<br>系统底层的实现居然一时间忘记了...<br><br>联想到如何确认一个类型能表示的最大最小值<br>(1)<br>所以想到的用sizeof运算符, 判断类型的位数, 然后笨笨地左移右移操作进行计算<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;getMaxInt()<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;iBase</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">const</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;IntSize&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">sizeof</span><span style="color: #000000;">(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000;">*</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">8</span><span style="color: #000000;">;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">int是有符号数,&nbsp;最左边一位是符号位<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">so</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">for</span><span style="color: #000000;">(</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;">1</span><span style="color: #000000;">;&nbsp;i&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;IntSize&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">&nbsp;;&nbsp;i</span><span style="color: #000000;">++</span><span style="color: #000000;">&nbsp;)<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iBase&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;(iBase&nbsp;</span><span style="color: #000000;">&lt;&lt;</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>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;iBase;&nbsp;<br>}</span></div>
好笨的方法...<br>很没效率<br><br>(2)<br>用强制转换吧, (int)0x*,<br>*是什么, 0x7fffffff <br>恶心-_-||, 我一开始又4个f了, 一个f才4位吧...<br><br>(3)<br>还有用bitset, bitsit有to_ulong方法, 凑合着用<br><br>(4)<br>climits的 INT_MAX<br>在cplusplus.com上面的reference是显示<br>
<table class="boxed">
    <tbody>
        <tr>
            <td><tt>INT_MAX</tt></td>
            <td>&nbsp;Maximum value for an object of type
            <tt>int <br></tt></td>
            <td><tt>&nbsp;= 32767</tt></td>
        </tr>
    </tbody>
</table>
被他的图表骗了<br><br>VC6版本的头文件里面是用<br>#define INT_MAX&nbsp; 2147483647&nbsp;
<br>直接定义的<br>查看cywin里面的头文件<br>也差不多..<br>#define __INT_MAX__ 2147483647
<br>#define INT_MAX __INT_MAX__
<br><br><br>(5)<br>C++标准方法..<br>//直接贴过来了<br>//前面有说明说numeric_limits&lt;int&gt;::max()等于INT_MAX<br>//... 只是封装了模板而已<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">&nbsp;1</span>&nbsp;<span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;numeric_limits&nbsp;example</span><span style="color: #008000;"><br></span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">#include&nbsp;</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;3</span>&nbsp;<span style="color: #000000;">#include&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">limits</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;"></span><span style="color: #0000ff;">using</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">namespace</span><span style="color: #000000;">&nbsp;std;<br></span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #000000;"></span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;main&nbsp;()&nbsp;{<br></span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;boolalpha;<br></span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">Minimum&nbsp;value&nbsp;for&nbsp;int:&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;numeric_limits</span><span style="color: #000000;">&lt;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">::min()&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br></span><span style="color: #008080;">&nbsp;9</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">Maximum&nbsp;value&nbsp;for&nbsp;int:&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;numeric_limits</span><span style="color: #000000;">&lt;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">::max()&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br></span><span style="color: #008080;">10</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">int&nbsp;is&nbsp;signed:&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;numeric_limits</span><span style="color: #000000;">&lt;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">::is_signed&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br></span><span style="color: #008080;">11</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">Non-sign&nbsp;bits&nbsp;in&nbsp;int:&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;numeric_limits</span><span style="color: #000000;">&lt;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">::digits&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br></span><span style="color: #008080;">12</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">int&nbsp;has&nbsp;infinity:&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;numeric_limits</span><span style="color: #000000;">&lt;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">::has_infinity&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br></span><span style="color: #008080;">13</span>&nbsp;<span style="color: #000000;">&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;">14</span>&nbsp;<span style="color: #000000;">}</span></div>
<br><br><br>没去找高手们的奇招, 浪浪荡荡又消费了不少时间...<br>继续潜修去<br><br><img src ="http://www.cppblog.com/lazz/aggbug/87410.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-06-11 15:15 <a href="http://www.cppblog.com/lazz/archive/2009/06/11/87410.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>for python IDLE</title><link>http://www.cppblog.com/lazz/archive/2009/03/17/76898.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Tue, 17 Mar 2009 11:18:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/03/17/76898.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/76898.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/03/17/76898.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/76898.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/76898.html</trackback:ping><description><![CDATA[-_-||| <br>一切源于自己的懒惰, 什么都喜欢方便快捷<br><br>python idle的默认代码补全快捷键与系统的输入法切换键冲突<br>自定义吧<br>明明是菜单下是show Completions<br>在keys下却是 "force-open-completions"<br>好找....<br><br>不懂得怎样设, ctrl 啊 shift 啊 alt 啊都会加上去, 可按键...<br>到现在还是白痴着, 怎样加上去的...<br><br>结果<br>一狠心<br>把ctrl设成快捷键应用后重启<br>噩梦开始了<br><br>IDLE无法启动...<br>Google了一下, 发现只有自己是这样白痴... 设快捷键设死的<br>没有解决方案<br>找到个思路<br><br>在控制台下 python idle.py<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">Traceback&nbsp;(most&nbsp;recent&nbsp;call&nbsp;last):<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">idle.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">22</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">module</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;idlelib.PyShell.main()<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\PyShell.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">1373</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;main<br>&nbsp;&nbsp;&nbsp;&nbsp;flist.new()<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\FileList.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">49</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;new<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;self.EditorWindow(self,&nbsp;filename)<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\PyShell.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">106</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">__init__</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;EditorWindow.</span><span style="color: #800080;">__init__</span><span style="color: #000000;">(self,&nbsp;</span><span style="color: #000000;">*</span><span style="color: #000000;">args)<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\EditorWindow.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">117</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">__init__</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;self.apply_bindings()<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\EditorWindow.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">943</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;apply_bindings<br>&nbsp;&nbsp;&nbsp;&nbsp;text.event_add(event,&nbsp;</span><span style="color: #000000;">*</span><span style="color: #000000;">keylist)<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\idlelib\MultiCall.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">359</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;event_add<br>&nbsp;&nbsp;&nbsp;&nbsp;widget.event_add(self,&nbsp;virtual,&nbsp;seq)<br>&nbsp;&nbsp;File&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">d:\Python\lib\tkinter\__init__.py</span><span style="color: #800000;">"</span><span style="color: #000000;">,&nbsp;line&nbsp;</span><span style="color: #000000;">1353</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">in</span><span style="color: #000000;">&nbsp;event_add<br>&nbsp;&nbsp;&nbsp;&nbsp;self.tk.call(args)<br>_tkinter.TclError:&nbsp;bad&nbsp;event&nbsp;type&nbsp;</span><span style="color: #0000ff;">or</span><span style="color: #000000;">&nbsp;keysym&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">Control</span><span style="color: #800000;">"</span></div>
<br>明摆着是自己的"Control"搞的破坏<br><br>白痴事件一:<br>这个control是在哪里读入的?<br>我居然想到是注册表<br>先前搞软件的快捷键实现导致现在知识混乱了<br>还真打开注册表搜索关键字<br>又动用Regmon在舍友的机上再次复原现场<br>// -_-!! 为什么就没用Filemon<br>结果又挂了一台<br><br><br>白痴事件二:<br>卸载<br>重装<br><br>卸载<br>重启后重装<br><br>用优化大师分析卸载<br>再重装<br><br>又卸载<br>换python2.6<br><br>还是不行...<br><br>//决定从此不在用优化大师的智能卸载了<br>//上次把我的一个游戏记录给删了<br>//这次却没把python在系统盘的残留物拉走...<br><br><br>白痴事件三:<br>跟踪错误看快捷键的设置是在哪里获取的...<br>可幸的是<br>python是开源的<br>不幸的是<br>python是开源的<br><br>我真的拿着几张白纸跟着上面的错误提示一点点的跟踪<br>分析各个调用<br>// 看着别人的代码和系统框架, 又是兴奋又是替自己惭愧<br><br><br><br>结果很失败<br>后果很严重<br>整个下午就这样过去了<br><br><br>很想放弃的<br>借此机会用锻炼下vim<br>却无意在python bugs Issue4765
发现了思路<br><br>痛苦啊<br>忽略了这种自定义环境一般都会在自己的用户文件夹下保存设置<br>一个备份删除<br>解决问题<br><br>抓狂<br><br>还是试试gvim<br>总不能在linux下是vim这边是idle<br>统一下习惯<br><br><br><br><br><br>&nbsp;&nbsp; <br><br><br><img src ="http://www.cppblog.com/lazz/aggbug/76898.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-03-17 19:18 <a href="http://www.cppblog.com/lazz/archive/2009/03/17/76898.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>python Idle 无法启动的一种解决方法</title><link>http://www.cppblog.com/lazz/archive/2009/03/17/76888.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Tue, 17 Mar 2009 10:32:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/03/17/76888.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/76888.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/03/17/76888.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/76888.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/76888.html</trackback:ping><description><![CDATA[前提:<br>&nbsp;&nbsp;&nbsp; 你的Idle曾经能出色的表现过<br><br>解决方案:<br>&nbsp;&nbsp;&nbsp; 把<br>&nbsp;&nbsp;&nbsp; Windows下<br>&nbsp;&nbsp;&nbsp; 系统盘:\Documents and Settings\&lt;your User Name&gt;\.idlerc" <span style="font-family: monospace;"><span style="font-style: italic;"><br>&nbsp;&nbsp;&nbsp; or<br>&nbsp;&nbsp;&nbsp; Linux下<br>&nbsp;&nbsp;&nbsp; home/your name/.idlerc&nbsp; //好像是..<br>&nbsp;&nbsp; <br>&nbsp; &nbsp; 里面的</span></span> <br>&nbsp;&nbsp;&nbsp; config-main.cfg 和 config-extensions.cfg 彻底删了<br>&nbsp;&nbsp; ( 建议先备份以便分析错误原因 )<br><br>&nbsp;&nbsp;&nbsp; <br>再重新启动IDLE<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp; 如果还不能启动<br>&nbsp;&nbsp; 自己在控制台下运行 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ..&gt; python lib\idlelib\idle.py<br><br>&nbsp;&nbsp; 跟踪下错误提示分析吧&nbsp; <br><br>&nbsp;&nbsp; <br><br><img src ="http://www.cppblog.com/lazz/aggbug/76888.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-03-17 18:32 <a href="http://www.cppblog.com/lazz/archive/2009/03/17/76888.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>字符串一句话排序</title><link>http://www.cppblog.com/lazz/archive/2009/03/15/76651.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Sun, 15 Mar 2009 08:07:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/03/15/76651.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/76651.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/03/15/76651.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/76651.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/76651.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">s&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">""</span><span style="color: #000000;">.join(sorted(source))</span></div>
<br><br>原来用旧版本用list实现<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">s&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">"</span><span style="color: #800000;">string</span><span style="color: #800000;">"</span><span style="color: #000000;"><br>l&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;list(s)<br>l.sort()<br>s&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">""</span><span style="color: #000000;">.join(l)<br></span></div>
<br><br><br><img src ="http://www.cppblog.com/lazz/aggbug/76651.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-03-15 16:07 <a href="http://www.cppblog.com/lazz/archive/2009/03/15/76651.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于c++对象全局对象析构的几点记录</title><link>http://www.cppblog.com/lazz/archive/2009/02/25/74904.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Wed, 25 Feb 2009 12:35:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/02/25/74904.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/74904.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/02/25/74904.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/74904.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/74904.html</trackback:ping><description><![CDATA[<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">#include</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">iostream</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">using</span><span style="color: #000000;">&nbsp;std::cout;<br></span><span style="color: #0000ff;">using</span><span style="color: #000000;">&nbsp;std::endl;<br></span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;CDust{<br></span><span style="color: #0000ff;">public</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;CDust()<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;CDust&nbsp;constructor&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">~</span><span style="color: #000000;">CDust()<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;~CFoo&nbsp;destructor&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>};<br><br><br>CDust A;<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;main()<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">;<br>}</span></div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">我想类似的代码在网上Google下应该有不少</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">尝试了下,在vc6.0的情况下,是没有输出 "~CFoo&nbsp;destructor", 但这并不代表 ~CDust() 没有执行.</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">在~CDust里面设置断点,会发现事实上程序运行时进入了析构函数里 &nbsp;// -_! 表达好牵强</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">本来想实在跟踪这里开始程序发生了什么调用了什么,发现功底不足,完全不明白,就先打断了</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">而再在' return 0 ' 语句前面加上断点,会看到这个新加的断点比析构里面的断点先到达,...&nbsp;</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">以现在c++的造诣和vc6.0的了解情况来看,头痛了</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">为什么 return 0 后程序不是正常结束了才去执行 全局对象的析构?</div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;"><br></div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">改写下代码<br></div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">#include</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">iostream.h</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br><br></span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;CDust{<br></span><span style="color: #0000ff;">public</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;CDust()<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;CDust&nbsp;constructor&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">~</span><span style="color: #000000;">CDust()<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;~CFoo&nbsp;destructor&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">&nbsp;endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>};<br><br><br>CDust&nbsp;A;<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;main()<br>{<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">;<br><br>}</span></div>
<br></div>
<div style="padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; width: 98%;">这样用旧版本的头文件实现,控制台输出了意外的两个调用 --- 析构函数输出显示了..<br><br>是cout在头文件的实现方式不同?<br><br>在dev-c++里面,运行第一代代码<br>根据断点的设置测试,也是先执行了 main()函数里面的 return 0 才进入全局函数的析构,也能发现析构函数里面的输出被调用了,控制台有明确的显示<br>这样一来,又不明白了...<br>在vc6.0里面为什么执行了全局函数的析构却没有所谓的输出?<br>是因为cmd控制台在'return 0'程序权限收回&nbsp; // 好像扯到系统的一些混乱的旧记忆了...<br><br>网游了一下<br>找到暂时比较清晰的说法是:<br>&nbsp;&nbsp; In C++, the constructor of a global object is executed before the
main() function(of course after the STARTUP code), while the destructor
<br>
is invoked after the main() function. So in my humble opinion, the
main() function is a bridge between the constructor and the
destructor.Further more, the constructor and the destructor is the
actual manager of the whole program, because they can manage all the<br>
resources of the program(for instance, the constructor allocate memory
units and the destructor free them.I'am not sure of this, any comments
will be appreciated in advance.).<br>
4)In C++, is it true that the resources obtained during the constructor
and the destructor (both belong to a global object)are managed by
themselves and have nothing with the main() function.Therfore, I think
the main() function is not the king in C++ as it is in C.&nbsp; <br>&nbsp;&nbsp; //感谢提出此说法的朋友<br>&nbsp;<br>&nbsp; _startup才是用户程序的起点和终点? 的确,调用_exit()函数再断点测试,全局对象的destructor是没有进入的机会&nbsp;&nbsp; //长见识了<br><br>&nbsp; 就此先打断... 再深入今晚就这样完了.<br>&nbsp; 就此记录下,以后再接触<br>
<br><br><br>不小心又接触了...<br>懒得开新的就集中在这里吧<br><br>在main()里面手动调用全局对象的析构, 最后程序都会执行两次析构调用... 在&lt;iostream.h&gt;的cout这种情况下明显,在std::cout下还得靠断点设置才能体现到(vc6的情况)<br>&nbsp;&nbsp;&nbsp;&nbsp; 这里是一种解析<br>&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Once a <strong class="highlight">destructor  is invoked for an object, the object no longer exists; the behavior is undefined if the <strong class="highlight">destructor  is invoked for an object whose lifetime has ended. [Example: if the <strong class="highlight">destructor
for an automatic object is explicitly invoked, and the block is
subsequently left in a manner that would ordinarily invoke implicit
destruction of the object, the behavior is undefined
</strong></strong></strong><br>}<br>&nbsp;&nbsp;&nbsp;&nbsp; 非global static object 也会出现两次调用, 区别只在与一个在main() 退出之前,一个在之后...<br>(的确,手工调用析构函数的情况很少出现&nbsp; -_! )<br>&nbsp;&nbsp;&nbsp;&nbsp; 如果我在析构里面存在 释放内存 这一类实现, 那第二次再次释放不是容易出问题!!! <br>&nbsp;&nbsp;&nbsp;&nbsp; 以后遇到这种情况得注意检测代码的添加...<br><br></div><img src ="http://www.cppblog.com/lazz/aggbug/74904.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-02-25 20:35 <a href="http://www.cppblog.com/lazz/archive/2009/02/25/74904.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于代码优化的专家建议 //摘录</title><link>http://www.cppblog.com/lazz/archive/2009/02/23/74663.html</link><dc:creator>蓝尘</dc:creator><author>蓝尘</author><pubDate>Mon, 23 Feb 2009 04:31:00 GMT</pubDate><guid>http://www.cppblog.com/lazz/archive/2009/02/23/74663.html</guid><wfw:comment>http://www.cppblog.com/lazz/comments/74663.html</wfw:comment><comments>http://www.cppblog.com/lazz/archive/2009/02/23/74663.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lazz/comments/commentRss/74663.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lazz/services/trackbacks/74663.html</trackback:ping><description><![CDATA[于 &lt;高质量程序设计艺术&gt;<br><br><br>程序优化的首要规则: 不要优化<br>&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; --- Michacel A.Jackson
<br><br>程序优化的第二规则:--只为专家准备: 不要优化<br>&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; --- Michacel A.Jackson
<br><br>草率的优化是所有(或者至少是大多数)编程问题的根源<br>&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; --- Donald E.Knuth<br><br>程序运行的快速和运行正确等同重要----错<br>&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; --- Steve McConnell<br><br>优化总是会把事情搞砸,因为长远来说,所有的优化都是一种欺骗行为,而骗子总是会被擒获的<br>&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; --- Larry Wall<br><br>提高性能的关键是优雅的设计,而不是特例的堆积,除非确能明显改善性能,否则一定要抵制玩弄技巧的诱惑.<br>&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; --- Jon L.Bentley 与 M. Douglas Mcllroy<br><br>以提高效率为名而犯下的计算罪恶比其他任何一种原因导致的错误都要多----包括纯粹的愚蠢<br>&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; --- William A.Wulf<br><br>效率的改善伴随着所有其他产品属性上付出的代价<br>&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; --- Martin Carroll 与 Margaret Ellis<br><br>当"高效"程序员遇到麻烦时,他们不愿意改变自己的方法,因为这会牺牲某些性能<br>&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; --- Gerald M.Weinberg<br><br>不要费劲编写快的程序,努力写出好的程序<br>&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; --- Joshua Bloch<br><br>附:<br>&nbsp;keep it sample<br><br><img src ="http://www.cppblog.com/lazz/aggbug/74663.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lazz/" target="_blank">蓝尘</a> 2009-02-23 12:31 <a href="http://www.cppblog.com/lazz/archive/2009/02/23/74663.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>