<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_子风.NET 进阶中......</title><subtitle type="text">路途多艱，唯勤是岸</subtitle><id>http://feed.cnblogs.com/blog/u/23773/rss</id><updated>2012-04-24T06:39:06Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/23773/rss"/><entry><id>http://www.cnblogs.com/86188281/archive/2012/04/24/2468044.html</id><title type="text">VS2005配置开发ARM</title><summary type="text">参考Blog http://blog.csdn.net/mienfong/article/details/3131842基本上都是已经这篇blog来做的，感谢作者。我的环境 ：xpsp3 vs2005 + cygwin Demo： Arm_Linux_Test下载 MakefilePDF以下是Blog，我没做修改。—————————————————————————————————————————————————————————————————Dev-C++ 編譯ARM程式教學教您如何使用Dev-C++編譯ARM程式，想用Dev-C++ 的朋友可以去看看。這是該文章裡部份資料，煩請依文下載檔案。</summary><published>2012-04-24T06:36:00Z</published><updated>2012-04-24T06:36:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2012/04/24/2468044.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2012/04/24/2468044.html"/><content type="html">&lt;p&gt;参考Blog &lt;a href="http://blog.csdn.net/mienfong/article/details/3131842"&gt;http://blog.csdn.net/mienfong/article/details/3131842&lt;/a&gt;&amp;nbsp;基本上都是已经这篇blog来做的，感谢作者。&lt;/p&gt;&lt;p&gt;我的环境&amp;nbsp; ：xpsp3 vs2005 + cygwin&amp;nbsp; &lt;/p&gt;&lt;p&gt;Demo：&amp;nbsp; &lt;a title="Arm_Linux_Test" href="http://files.cnblogs.com/86188281/Arm_Linux_Test.rar"&gt;Arm_Linux_Test&lt;a href="http://files.cnblogs.com/86188281/Arm_Linux_Test.rar"&gt;下载&lt;/a&gt;&amp;nbsp;&lt;/a&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a title="MakefilePDF" href="http://files.cnblogs.com/86188281/跟我一起写Makefile.pdf"&gt;MakefilePDF&lt;/a&gt;&lt;/p&gt;&lt;p&gt;以下是Blog，我没做修改。&lt;/p&gt;&lt;p&gt;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&lt;/p&gt;&lt;p&gt;&lt;a href="http://wa5p6q.spaces.live.com/blog/cns!769F355A4CB0687F!442.entry"&gt;&lt;font color="#0000ff"&gt;Dev-C++ &lt;/font&gt;編譯ARM程式教學&lt;/a&gt;教您如何使用Dev-C++編譯ARM程式，想用Dev-C++ 的朋友可以去看看。&lt;/p&gt;&lt;p&gt;這是該文章裡部份資料，煩請依文下載檔案。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;table style="width: 88.18%; height: 72px" border="1" cellspacing="1" cellpadding="1" align="center"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;關於cross-compiler的部份在cygwin你可以使用&lt;a href="http://handhelds.org/~fanoush/cygwin-arm-cross-2.95.3/cygwin-arm-cross-2.95.3.tar.gz"&gt;&lt;font color="#006629"&gt;&lt;u&gt;cygwin-arm-cross-2.95.3&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;，但是如果不使用cygwin則不能使用這個工具，因為它好像會用到cygwin的某些dll，所以我使用了另一個&lt;a href="http://jaist.dl.sourceforge.net/sourceforge/devkitpro/devkitGP2X-win32.exe"&gt;&lt;font color="#006629"&gt;&lt;u&gt;工具包&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;(&lt;a href="http://sodays0503.myweb.hinet.net/Embed/devkitGP2X-win32.exe"&gt;&lt;font color="#006629"&gt;&lt;u&gt;下載&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;)，這個&lt;a href="http://jaist.dl.sourceforge.net/sourceforge/devkitpro/devkitGP2X-win32.exe"&gt;&lt;font color="#006629"&gt;&lt;u&gt;工具包&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;只是一個自解壓縮檔，解開之後就可以用了。假設你把工具包解開放在「C:/etc/devkitGP2X」，以下的步驟將敎你如何在dev-cpp下設定該開發環境。&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;p&gt;下文中鄙人是同時安裝cygwin和devkitGP24X，因為鄙人的cygwin編譯時會出現錯誤故將arm-linux覆蓋devkitGP2X裡相同的資料夾，並使用devkitGP2X裡的arm-linux。&lt;/p&gt;&lt;p&gt;&lt;font color="#ff0000"&gt;VC&lt;/font&gt;&lt;font color="#ff0000"&gt;建立編譯環境&lt;/font&gt;&lt;/p&gt;&lt;p&gt;(1)新建專案 &lt;font face="楷体"&gt;-&amp;gt;&lt;/font&gt; 選擇一般裡的Makefile 專案 。&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/1.JPG" /&gt;&lt;/p&gt;&lt;p&gt;(2)出現Makefile 應用程式精靈，組態設定先不設，直接按完成。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/2.JPG" /&gt;&lt;/p&gt;&lt;p&gt;(3)設定ARM編譯環境。&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;選擇Arm_Linux_Test專案，按右鍵選起屬性。&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/3.JPG" /&gt;&lt;/p&gt;&lt;p&gt;(4)組態設定(C:/cygwin/ 為安裝的cygwin路徑)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;選NMake -&amp;gt; 包含搜尋路徑：加入兩個include路徑&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;C:/cygwin/usr/include&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;C:/cygwin/lib/gcc/i686-pc-cygwin/3.4.4/include/c++&amp;nbsp; (3.4.4是依使用版本而定)&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/4.JPG" width="710" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;(5)設定建置時的命令。&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;輸入&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PATH = $PATH;c:/cygwin/bin&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cd ../Arm_Linux_Test&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(這是存放程式的目錄)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c:/cygwin/bin/make.exe PLATFORM=arm&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/5.JPG" width="710" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;(6)設定重建時的命令。&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;輸入&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PATH = $PATH;c:/cygwin/bin&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cd ../Arm_Linux_Test&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c:/cygwin/bin/make.exe &lt;font color="#ff0000"&gt;rebuild&lt;/font&gt; PLATFORM=arm (記得加上rebuild)&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/6.JPG" width="710" /&gt;&lt;/p&gt;&lt;p&gt;(7)設定清除時的命令。&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;輸入&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PATH = $PATH;c:/cygwin/bin&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cd ../Arm_Linux_Test&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c:/cygwin/bin/make.exe &lt;font color="#ff0000"&gt;clean&lt;/font&gt; PLATFORM=arm (記得加上clean)&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/7.JPG" width="710" /&gt;&lt;/p&gt;&lt;p&gt;(8)最後設定Makerfile。&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mienfong/EntryImages/20081023/8.JPG" /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;建立Makefile檔，填入下面Makefile內容，說明文字(&lt;font color="#0000ff"&gt;藍字&lt;/font&gt;)請刪除。&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;您可依情況自行修改，Makefile相關資料請自行上網查詢&lt;/p&gt;&lt;div class="highlighter"&gt;&lt;ol class="highlighter-cpp"&gt;&lt;li&gt;&lt;span class="preprocessor"&gt;#&amp;nbsp;Project:&amp;nbsp;Arm_Linux_Test &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;ifeq&amp;nbsp;(arm,$(PLATFORM))&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;CXX&amp;nbsp;&amp;nbsp;=&amp;nbsp;c:/devkitGP2X/bin/arm-linux-g++.exe&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;#若有使用devkitGP2X的arm-linux-gcc的位置，若單獨使用cygwin&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;CC&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;nbsp;c:/devkitGP2X/bin/arm-linux-gcc.exe&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;#請自行在cygwin目錄中尋找存放這三個編譯器的位置&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;LD&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;nbsp;c:/devkitGP2X/bin/arm-linux-ld.exe&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;endif&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#若不是使用devkitGP2X請依情況改成cygwin的目錄&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;LIBS&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span&gt;-L&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/lib"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;INCS&amp;nbsp;=&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/include"&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;CXXINCS&amp;nbsp;=&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/lib/gcc/arm-linux/4.0.2/include"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/include/c++/4.0.2/backward"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/include/c++/4.0.2/arm-linux"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/include/c++/4.0.2"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;-I&lt;/span&gt;&lt;span class="string"&gt;"c:/devkitGP2X/include"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;CXXFLAGS&amp;nbsp;=&amp;nbsp;$(CXXINCS)&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;CFLAGS&amp;nbsp;=&amp;nbsp;$(INCS)&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;RM&amp;nbsp;=&amp;nbsp;rm&amp;nbsp;-f&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="preprocessor"&gt;#CFLAGS=-Wall&amp;nbsp;-g&amp;nbsp;-O &lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;BIN&amp;nbsp;&amp;nbsp;=&amp;nbsp;Process_Thread_Test.exe&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;#決定建置出來的檔名及所以位置(預設是方案的目錄下)&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;OBJS&amp;nbsp;=&amp;nbsp;$(patsubst&amp;nbsp;%.c,%.o,$(wildcard&amp;nbsp;*.c))&amp;nbsp;$(patsubst&amp;nbsp;%.s,%.o,$(wildcard&amp;nbsp;*.s))&amp;nbsp;$(patsubst&amp;nbsp;%.cpp,%.o,$(wildcard&amp;nbsp;*.cpp))&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;.PHONY:rebuild&amp;nbsp;clean&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;$(BIN):&amp;nbsp;$(OBJS)&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(CC)&amp;nbsp;$(OBJS)&amp;nbsp;-o&amp;nbsp;$(BIN)&amp;nbsp;$(LIBS)&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;clean:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;#這是清除命令，之前的清除命令列就是設這裡&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(RM)&amp;nbsp;$(OBJS)&amp;nbsp;$(BIN)&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;rebuild:&amp;nbsp;clean&amp;nbsp;$(BIN)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;#重建命令列&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;環境設置好了，可用VC編譯Arm程式了。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2468044.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2012/04/24/2468044.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2012/01/12/2320691.html</id><title type="text">c++ 虚析构函数的思考</title><summary type="text">最近一段时间在学c++，对于c++的虚析构函数有一点自己的理解ｃ＋＋中如果类有虚函数的话，子类如果有重虚函数的，子类在构造的时候就会先初始化虚表指针，虚表指针指向真正的子类函数的地址。虚析构函数由于名字不一样，但是编译器还是会把子类析构函数的地址放在虚表中，供后面掉用。</summary><published>2012-01-12T07:36:00Z</published><updated>2012-01-12T07:36:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2012/01/12/2320691.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2012/01/12/2320691.html"/><content type="html">&lt;p&gt;最近一段时间在学c++，对于c++的虚析构函数有一点自己的理解&lt;/p&gt;&lt;p&gt;ｃ＋＋中如果类有虚函数的话，子类如果有重虚函数的，子类在构造的时候就会先初始化虚表指针，虚表指针指向真正的子类函数的地址。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;虚析构函数由于名字不一样，但是编译器还是会把子类析构函数的地址放在虚表中，供后面掉用。&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2320691.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2012/01/12/2320691.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2011/12/06/2277781.html</id><title type="text">arm-linux-g++ 下交叉编译libxml2</title><summary type="text">来自： http://blog.csdn.net/expleeve/article/details/6037219由于XML在数据存储方面的优势，使得使用xml作为配置文件，是一种常用的手段。 libxml2是一个xml c语言版的解析器，本来是为Gnome项目开发的工具，是一个基于MIT License的免费开源软件。它除了支持c语言版以外，还支持c++、PHP、Pascal、Ruby、Tcl等语言的绑定，能在Windows、Linux、Solaris、MacOsX等平台上运行。功能还是相当强大的，相信满足一般用户需求没有任何问题。 最近在arm-linux平台上需要用到libxml2库，这</summary><published>2011-12-06T03:47:00Z</published><updated>2011-12-06T03:47:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2011/12/06/2277781.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2011/12/06/2277781.html"/><content type="html">&lt;div&gt;来自： http://blog.csdn.net/expleeve/article/details/6037219&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div&gt;&lt;p&gt;由于XML在数据存储方面的优势，使得使用xml作为配置文件，是一种常用的手段。&lt;/p&gt; &lt;p&gt;libxml2是一个xml c语言版的解析器，本来是为Gnome项目开发的工具，是一个基于MIT License的免费开源软件。它除了支持c语言版以外，还支持c++、PHP、Pascal、Ruby、Tcl等语言的绑定，能在Windows、&lt;strong&gt;Linux&lt;/strong&gt;、Solaris、MacOsX等平台上运行。功能还是相当强大的，相信满足一般用户需求没有任何问题。&lt;/p&gt; &lt;p&gt;最近在arm-linux平台上需要用到libxml2库，这里做一个记录。&lt;/p&gt; &lt;p&gt;首先，从libxml2官网上下载相关软件包，我用的是&lt;a href="http://xmlsoft.org/sources/libxml2-sources-2.7.8.tar.gz"&gt;&lt;span style="color: #800040;"&gt;libxml2-sources-2.7.8.tar.gz&lt;/span&gt;&lt;/a&gt;&amp;nbsp;。&lt;/p&gt; &lt;p&gt;1、&amp;nbsp; 解压后，./configure &amp;#8211;host=arm-linux&lt;/p&gt; &lt;p&gt;2、 make&amp;nbsp;&amp;nbsp;&lt;/p&gt; &lt;p&gt;3、 make install&lt;/p&gt; &lt;p&gt;这样就生成了arm下的共享库文件（.so）和静态链接库文件（.a），默认存放在/usr/lib下面（当然与你本机的环境变量有关）&lt;/p&gt; &lt;p&gt;在进行编译时，可以使用如下命令&lt;/p&gt; &lt;p&gt;mipsel-linux-gcc&amp;nbsp;&amp;nbsp;-o&amp;nbsp;targetfile sourcefile.c -I /usr/local/include/libxml2/ -L /usr/local/lib &amp;nbsp;-lxml2&lt;/p&gt; &lt;p&gt;通过file命令，可以看到目标程序的类型&lt;/p&gt; &lt;p&gt;ELF 32-bit LSB executable, MIPS, MIPS64 version 1 (SYSV), dynamically linked (uses shared libs), not stripped&lt;/p&gt; &lt;p&gt;这样就得到目标程序。&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 把这个程序放到arm平台的开发板上，然后把libxml2.so.2放在开发板的/lib或者/usr/lib目录下，即可在开发板上正常运行目标程序。&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2277781.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2011/12/06/2277781.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2011/11/17/2252766.html</id><title type="text">（转）Eclipse代码提示功能设置(Java &amp;amp; C/C++)</title><summary type="text">转：http://www.cnblogs.com/myitm/archive/2010/12/17/1909194.html今天有点时间，研究了一下MyEclispse的智能感知的功能。刚开始使用它时总是感觉如此不爽→智能感知功能太弱！与Visual Studio2008简直不是一个档次的！不过后来经过查看网上的资料发现它也并非如此的弱，就在上周我自己玩弄它时就发现可以通过如下设置来修改它的智 能感知的提示时间： Windows→Preferences→Java→Editor→Content Assist 我们看到其中的AutoActivation Delay默认值为200（单位是毫秒）也..</summary><published>2011-11-17T07:48:00Z</published><updated>2011-11-17T07:48:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252766.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252766.html"/><content type="html">&lt;p&gt;转：http://www.cnblogs.com/myitm/archive/2010/12/17/1909194.html&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div&gt;&lt;p&gt;今天有点时间，研究了一下MyEclispse的智能感知的功能。刚开始使用它时总是感觉如此不爽&amp;#8594;智能感知功能太弱！与Visual  Studio2008简直不是一个档次的！不过后来经过查看网上的资料发现它也并非如此的弱，就在上周我自己玩弄它时就发现可以通过如下设置来修改它的智  能感知的提示时间：&lt;/p&gt; &lt;p&gt;Windows&amp;#8594;Preferences&amp;#8594;Java&amp;#8594;Editor&amp;#8594;Content Assist&lt;/p&gt; &lt;p&gt;我们看到其中的AutoActivation Delay默认值为200（单位是毫秒）也就是说在打&amp;#8220;.&amp;#8221;之后停留200毫秒才能出现智能感知的提示。那么将它修改为20会如何呢？试一下，修改为20之后提示速度明显上升，可以达到与时俱进啦&amp;#8230;&amp;#8230;:)&lt;/p&gt; &lt;p&gt;ok，上次修改了提示时间。这次修改一下它的触发智能感知的触发器。也就是让它像我们的Visual  Studio2008那样的强大的感知功能，即输入S即可提示出所有以S开头的关键字这样的功能。很简单，选项Auto Activation  triggers for java的值，将原有的触发器&amp;#8220;.&amp;#8221;修改为"." +  26&amp;#215;2个字母。嗯？为什么是26&amp;#215;2？因为字母得分大小写呀，大写26个，小写26个，当然就26&amp;#215;2了嘛！&lt;/p&gt; &lt;p&gt;具体操作如下：&lt;/p&gt; &lt;p&gt;定位到：Windows&amp;#8594;Preferences&amp;#8594;Java&amp;#8594;Editor&amp;#8594;Content Assist&lt;/p&gt; &lt;p&gt;然后修改：Auto Activation triggers for  java的默认值&amp;#8220;.&amp;#8221;为".abc"。接着File&amp;#8594;Export&amp;#8594;Preferences&amp;#8594;导出到某一文件（假设为test.epf),然后用记事本  打开test.epf,搜索".abc"然后将其改  为".abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW"，保存。&lt;/p&gt; &lt;p&gt;然后File&amp;#8594;Import&amp;#8594;Preferences&amp;#8594;test.epf，ok，再去编写java程序。&lt;/p&gt; &lt;p&gt;你自己可以去试，不过还是先看看我的效果为好哦：&lt;/p&gt; &lt;p&gt;输入Sys 智能感知：&lt;img src="http://images.cnblogs.com/cnblogs_com/hanxianlong/system.jpg" alt="" height="267" width="418" border="0" /&gt;&lt;/p&gt; &lt;p&gt;我们知道在VS中，输入try，再打两个tab键就会出现try的代码块，那么此时这一功能也可以实现：&lt;/p&gt; &lt;p&gt;&lt;img src="http://images.cnblogs.com/cnblogs_com/hanxianlong/try.jpg" alt="" height="131" width="723" border="0" /&gt;&lt;/p&gt; &lt;p&gt;点击&amp;#8220;回车"出现的代码块如下：&lt;/p&gt; &lt;p&gt;&lt;img src="http://images.cnblogs.com/cnblogs_com/hanxianlong/try_enter.jpg" alt="" height="82" width="278" border="0" /&gt;&lt;/p&gt; &lt;p&gt;怎么样？实用性是不是很强？我相信它能使您的开发效率提高数倍。&lt;/p&gt;&lt;/div&gt;&amp;nbsp;&lt;div&gt;&lt;div&gt; C/C++:&lt;/div&gt; &lt;div&gt; &amp;nbsp;&lt;/div&gt; &lt;div&gt; 打开终端：输入：$ gcc- v&lt;/div&gt; &lt;div&gt; 得到类似的：gcc 版本 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)&lt;/div&gt; &lt;div&gt; 很容易就看到你当前使用的版本了。&lt;/div&gt; &lt;div&gt; 启动Eclipse.进入：Windows--&amp;gt;Preferences--&amp;gt;C/C++找到Environment。增加两个变量：&lt;/div&gt; &lt;div&gt; CPLUS_INCLUDE_PATH: /usr/include/c++/4.1.3(我的gcc版本)&amp;nbsp;&lt;/div&gt; &lt;div&gt; C_INCLUDE_PATH: /usr/include&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2252766.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252766.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2011/11/17/2252764.html</id><title type="text">linux下面eclipse的c++配置</title><summary type="text">转：http://blog.csdn.net/schumyxp/article/details/2119186打算用linux下面的eclipse进行c++开发，因为好久没做c++开发了，又对linux没那么熟悉，就记录一下我的入门经历。 目的是创建一个共享库，然后用另一个项目去调用。 首先，创建一个共享库。打开eclipse，选择c++项目里面的共享库，创建即可，然后就是编写相应的代码什么的…… 比如这个库就叫做test吧，里面有个类，叫做CTest。 写好之后，编译，保证没有问题。这个时候应该得到了一个libtest.so文件，还有就是CTest类的头文件CTest.h。 这个时候...</summary><published>2011-11-17T07:47:00Z</published><updated>2011-11-17T07:47:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252764.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252764.html"/><content type="html">&lt;p&gt;转：http://blog.csdn.net/schumyxp/article/details/2119186&lt;/p&gt;&lt;p&gt;&lt;div&gt;打算用linux下面的eclipse进行c++开发，因为好久没做c++开发了，又对linux没那么熟悉，就记录一下我的入门经历。&lt;br /&gt; &lt;br /&gt; 目的是创建一个共享库，然后用另一个项目去调用。&lt;br /&gt; &lt;br /&gt; 首先，创建一个共享库。打开eclipse，选择c++项目里面的共享库，创建即可，然后就是编写相应的代码什么的&amp;#8230;&amp;#8230;&lt;br /&gt; 比如这个库就叫做test吧，里面有个类，叫做CTest。&lt;br /&gt; &lt;br /&gt; 写好之后，编译，保证没有问题。这个时候应该得到了一个libtest.so文件，还有就是CTest类的头文件CTest.h。&lt;br /&gt; &lt;br /&gt; 这个时候这个库还不能像在windows下面似的直接拿来就用。还得进行一下&amp;#8220;安装&amp;#8221;。&lt;br /&gt; &lt;br /&gt; 其实可以安装这个库的位置很多，我是把它安装在了/usr/lib下面。但是那里面本来就有很多系统里面的东西。为了不让自己的库和系统的混了，我在/usr下面建立了一个文件夹clib，然后把libtest.so和CTest.h都拷贝到了/usr/clib下面。&lt;br /&gt; 然后建立一个软链接，如下：&lt;br /&gt; #ln -s /usr/clib/libtest.so /usr/lib&lt;br /&gt; 建立好之后，再更新一下系统信息：&lt;br /&gt; #ldconfig&lt;br /&gt; 这样之后，这个库就可以用了。感觉linux下面的共享库，就好像.net里面的强名称的dll。&lt;br /&gt; &lt;br /&gt; 下面就可以使用这个库了。不过c++里面用起来就是麻烦一些啊，呵呵。&lt;br /&gt; &lt;br /&gt; 首先建立一个可执行的c++项目，然后&amp;#8220;引入&amp;#8221;刚才安装好的库，引入的过程如下（.net下面点点鼠标就行了，都把我惯坏了）：&lt;br /&gt; &lt;br /&gt; 为编译器指定路径：在-l参数下面，添加libtest.so所在的位置，我这里就是/usr/clib。&lt;br /&gt; &lt;br /&gt; 为链接器指定要引用的库：在-l参数下面添加test，这个就是前面做的那个共享库。test前后的lib和.so都是系统自己加的，编译的时候也会自己加上，所以一定得写test。&lt;br /&gt; &lt;br /&gt; 为编译器指定库所在的路径：在-L参数下面，添加libtest.so所在的路径就可以了，这里还是/usr/clib。&lt;br /&gt; &lt;br /&gt; 这样配置好之后，test这个库终于可以用了。&lt;br /&gt; &lt;br /&gt; 用的时候，include "CTest.h"后，就可以用类CTest了。&lt;br /&gt; &lt;br /&gt; 如果你怕乱，把CTest.h这个头文件放在了/usr/clib/CTest这个目录下面，那就是include "CTest/CTest.h"了。现在应该更明白了吧，以后想怎么安排文件结构，就可以随意发挥了。&lt;br /&gt; &lt;br /&gt; 接下来，就可以编译运行程序了。&lt;br /&gt; &lt;br /&gt; 如果不幸出错了（估计第一次搞linux开发的人，很多会出错的），不要着急，几乎都是上面的路径没写对。这个时候可以使用ldd命令来查看都引用了那些库，有没有问题，一眼就能看出来了。&lt;br /&gt; &lt;br /&gt; 我想，有了这些基本的准备，就可以开始linux下面的c++开发了。&lt;/div&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2252764.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2011/11/17/2252764.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2011/11/09/2242508.html</id><title type="text">VS2008 配置boost</title><summary type="text">转：http://www.cnblogs.com/wondering/archive/2009/05/21/boost_setup.htmlhttp://www.cnblogs.com/finallyliuyu/archive/2010/08/23/1806811.html这里面有设置链接库的图理论上，本文适用于boost的各个版本，尤其是最新版本1.47.0；适用于各种C++编译器，如VC6.0（部分库不支持），VS2003，VS2005，VS2008，VS2010，gcc，C++ Builder等。先总结一下Windows系统。 一、下载 首先从boost官方主页http://www.b</summary><published>2011-11-09T06:38:00Z</published><updated>2011-11-09T06:38:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2011/11/09/2242508.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2011/11/09/2242508.html"/><content type="html">&lt;p&gt;转：http://www.cnblogs.com/wondering/archive/2009/05/21/boost_setup.html&lt;/p&gt;&lt;p&gt;&lt;div&gt;http://www.cnblogs.com/finallyliuyu/archive/2010/08/23/1806811.html　这里面有设置链接库的图&lt;/div&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div&gt;&lt;p&gt;理论上，本文适用于boost的各个版本，尤其是最新版本1.47.0；适用于各种C++编译器，如VC6.0（部分库不支持），VS2003，VS2005，VS2008，VS2010，gcc，C++ Builder等。先总结一下Windows系统。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #666699;"&gt;一、下载&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;首先从boost官方主页&lt;span style="text-decoration: none;"&gt;&lt;a title="http://www.boost.org" href="http://www.boost.org/" target="_blank"&gt;http://www.boost.org/&lt;/a&gt;下载最新版boost安装包，或者使用Subversion获取最新版本，地址是：&lt;a title="http://svn.boost.org/svn/boost/trunk" href="http://svn.boost.org/svn/boost/trunk" target="_blank"&gt;http://svn.boost.org/svn/boost/trunk&lt;/a&gt;。本人现在一般都用svn，这样可以很方便的进行update和build，而不是每次都下载新的安装包并rebuild。&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #666699;"&gt;&lt;strong&gt;二、安装&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;如果是使用下载的安装包，那么请将boost安装包解压至本地目录，如：E:\SDK\boost；如果是用svn的，也可以将boost的代码 checkout到这个目录。因为boost一部分类是需要编译成库才能使用的，所以我们还需要准备好boost专用的编译辅助工具bjam。在命令提示 符（cmd.exe）中执行根目录下的bootstrap.bat，编译后的bjam.exe会自动拷贝到该目录下（bjam必须与boost- build.jam在同级目录）。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #666699;"&gt;三、编译&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;div&gt;接下来就是最重要的编译步骤了。需要打开命令提示符（cmd.exe）窗口并执行bjam，可以使用--help参数来查看命令帮助。这里详细 讲解一下bjam的命令行参数，因为它非常重要。首先，它涉及到编程环境的搭建，你需要根据自己今后具体的使用环境来选择合适的命令行参数；其次，它影响 到你的硬盘空间，完全编译的话据说在3G以上，如果你同时拥有2个以上的IDE（如VC6和VC9共存）而且都要用到boost，那么占用多少硬盘就自己 算吧&amp;#8230;&amp;#8230;虽说如今大家的硬盘空间都不成问题，但就像本人一样崇尚合理利用资源不习惯铺张浪费提倡节俭的童鞋应该大有人在，所以不需要的配置和不需要的库就 可以不编译了。综合以上两点因素，本人使用的bjam命令如下：&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt;  &lt;div&gt;&lt;span style="color: #000000;"&gt;bjam&amp;nbsp;stage&amp;nbsp;--toolset&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;msvc-&lt;/span&gt;&lt;span style="color: #000000;"&gt;9.0&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;--without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave&lt;span style="color: #000000;"&gt;&amp;nbsp;--stagedir&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;E:\SDK\boost\bin\vc9&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;link&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;static&amp;nbsp;runtime-link&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: red;"&gt;shared&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; color: #000000;"&gt;runtime-link&lt;/span&gt;&lt;span style="font-family: 'Courier New'; color: #000000;"&gt;=&lt;/span&gt;&lt;span style="font-family: 'Courier New'; color: red;"&gt;static&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;threading&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;multi&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;debug&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;release&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;br /&gt; &lt;p&gt;&lt;span style="color: #993366;"&gt;下面详细解释一下每个参数的含义：&lt;/span&gt;&lt;/p&gt; &lt;div&gt;&lt;strong&gt;stage/install：&lt;/strong&gt;stage表示只生成库（dll和lib），install还会生成包含头文 件的include目录。本人推荐使用stage，因为install生成的这个include目录实际就是boost安装包解压缩后的boost目录 （E:\SDK\boost\boost，只比include目录多几个非hpp文件，都很小），所以可以直接使用，而且不同的IDE都可以使用同一套头 文件，这样既节省编译时间，也节省硬盘空间。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;toolset：&lt;/strong&gt;指定编译器，可选的如borland、gcc、msvc（VC6）、msvc-9.0（VS2008）等。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;without/with：&lt;/strong&gt;选择不编译/编译哪些库。因为python、mpi等库我都用不着，所以排除 之。还有wave、graph、math、regex、test、program_options、serialization、signals这几个库 编出的静态lib都非常大，所以不需要的也可以without掉。这可以根据各人需要进行选择，默认是全部编译。但是需要注意，如果选择编译python 的话，是需要python语言支持的，应该到python官方主页&lt;a title="http://www.python.org" href="http://www.python.org/" target="_blank"&gt;http://www.python.org/&lt;/a&gt;下载安装。查看boost包含库的命令是&lt;em&gt;bjam --show-libraries&lt;/em&gt;。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;stagedir/prefix：&lt;/strong&gt;stage时使用stagedir，install时使用prefix， 表示编译生成文件的路径。推荐给不同的IDE指定不同的目录，如VS2008对应的是E:\SDK\boost\bin\vc9，VC6对应的是E: \SDK\boost\bin\vc6，否则都生成到一个目录下面，难以管理。如果使用了install参数，那么还将生成头文件目录，vc9对应的就是 E:\SDK\boost\bin\vc9\include\boost-1_46\boost,vc6类似（光这路径都这样累赘，还是使用stage 好）。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;build-dir：&lt;/strong&gt;编译生成的中间文件的路径。这个本人这里没用到，默认就在根目录（E:\SDK\boost）下，目录名为bin.v2，等编译完成后可将这个目录全部删除（没用了），所以不需要去设置。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;link：&lt;/strong&gt;生成动态链接库/静态链接库。生成动态链接库需使用shared方式，生成静态链接库需使用static方式。一般boost库可能都是以static方式编译，因为最终发布程序带着boost的dll感觉会比较累赘。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;runtime-link：&lt;/strong&gt;动态/静态链接C/C++运行时库。同样有shared和static两种方 式，这样runtime-link和link一共可以产生4种组合方式，各人可以根据自己的需要选择编译。一般link只选static的话，只需要编译 2种组合即可，即link=static runtime-link=shared和link=static  runtime-link=static，本人一般就编这两种组合。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;threading：&lt;/strong&gt;单/多线程编译。一般都写多线程程序，当然要指定multi方式了；如果需要编写单线程程序，那么还需要编译单线程库，可以使用single方式。&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;debug/release：&lt;/strong&gt;编译debug/release版本。一般都是程序的debug版本对应库的debug版本，所以两个都编译。&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;本人按以上方式分别编译了静态链接和动态链接两个版本后，整个E:\SDK\boost目录有1.28G。如果不打算将来再升级boost版 本，那么可以将编译生成的中间文件bin.v2目录删除，这样整个目录（包括安装包解压缩文件和编译生成的库文件）会减小至不到800MB，如果 runtime-link只选了一种方式，那么整个目录只有600MB。事实上编译完成后除了boost和bin目录之外其他目录和文件已经可以删除了， 这样还可以腾出350MB的空间来。不过我又研究了一下，其实libs这个目录也很有用，它提供了所有Boost类的使用范例，平时可以作为参考；另外 doc目录是一个完整的boost使用帮助文档，当然最好也不要删了。其他几个目录和文件加起来也就几十兆，索性都给它们留一条生路吧。&lt;/div&gt;  &lt;div&gt;呵呵，一个完整而又完美的boost目录就此诞生了。&lt;/div&gt; &lt;p id="aeaoofnhgocdbnbeljkmbjdmhbcokfdb-mousedown"&gt;需要注意的是，如果使用VS2008编译 boost（其他版本VC未作测试，可能也有类似问题），那么假如你调用boost的主程序添加了 _BIND_TO_CURRENT_VCLIBS_VERSION预定义宏来强制使用最新版本的Windows  CRT库，那么你的boost也需要添加这个预定义宏来进行编译，否则会导致程序因为各模块使用的CRT库版本不统一而出现&amp;#8220;在某些机器上运行提示&amp;#8216;由于 应用程序配置不正确，应用程序未能启动&amp;#8217;的问题&amp;#8221;，关于该问题请参考我的另外一篇文章：&lt;a title="【原】解决VS2008编译的程序在某些机器上运行提示&amp;#8220;由于应用程序配置不正确，应用程序未能启动&amp;#8221;的问题" href="http://www.cnblogs.com/wondering/archive/2009/08/29/vs2008_deploy_problem.html" target="_blank"&gt;【原】解决VS2008编译的程序在某些机器上运行提示&amp;#8220;由于应用程序配置不正确，应用程序未能启动&amp;#8221;的问题&lt;/a&gt;。添加该预定义宏的方法是：打开boost安装根目录下的boost\config\compiler\visualc.hpp，在最上面增加：&lt;/p&gt; &lt;div&gt; &lt;div&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;&amp;nbsp;Added&amp;nbsp;by&amp;nbsp;terry,&amp;nbsp;2011/4/19,&amp;nbsp;Force&amp;nbsp;the&amp;nbsp;linker&amp;nbsp;to&amp;nbsp;use&amp;nbsp;the&amp;nbsp;latest&amp;nbsp;version&amp;nbsp;of&amp;nbsp;CRT/MFC/ATL&amp;nbsp;dll&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="color: #000000;"&gt;#ifndef&amp;nbsp;_BIND_TO_CURRENT_VCLIBS_VERSION&lt;br /&gt; &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;#define&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;_BIND_TO_CURRENT_VCLIBS_VERSION&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;br /&gt; &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;#endif&lt;/span&gt;&amp;nbsp;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;&amp;nbsp;_BIND_TO_CURRENT_VCLIBS_VERSION&lt;/span&gt;&amp;nbsp;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;这种方法修改了boost的源码，并非我所愿， 但是无奈没有找到更好的方法，如果有人知道希望能够留言告诉我。&lt;/p&gt; &lt;div&gt;如果图省事，不想了解这么多，那么有简单的方法，可以使用命令：&lt;/div&gt;  &lt;div&gt;&lt;span style="font-size: 13px;"&gt; &lt;div&gt;&lt;span style="color: #000000;"&gt;bjam&amp;nbsp;--toolset&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;msvc-&lt;/span&gt;&lt;span style="color: #000000;"&gt;9.0&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;--build-&lt;/span&gt;&lt;span style="color: #000000;"&gt;type&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;complete&lt;/span&gt;&lt;/div&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div&gt;直接指定编译器以完全模式编译即可，这样可以满足今后的一切使用场合，但同时带来的后果是：&lt;/div&gt; &lt;div&gt;1、占用3G以上的硬盘空间&lt;br /&gt; 2、占用若干小时的编译时间&lt;br /&gt; 3、头文件和库文件存放于C:\Boost（本人非常反感）&lt;br /&gt; &lt;p&gt;4、生成的很多文件可以永远也用不上&lt;/p&gt; &lt;p&gt;&lt;span style="color: #666699; font-size: 16px; font-weight: bold;"&gt;四、配置&lt;/span&gt;&lt;/p&gt; &lt;/div&gt; &lt;div&gt;include目录：E:\SDK\boost&lt;/div&gt; &lt;div&gt;library目录：E:\SDK\boost\bin\vc9\lib&lt;/div&gt; &lt;p&gt;添加到IDE相应的路径下面即可。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #666699;"&gt;五、使用&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;div&gt;使用举例：&lt;/div&gt;  &lt;div&gt;&lt;span style="font-size: 13px;"&gt; &lt;div&gt;&lt;span style="color: #000000;"&gt;#include&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;boost\thread.hpp&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt; &lt;/span&gt;&lt;/div&gt;  &lt;div&gt;此时，不用包含库文件，boost的auto-link机制将会自动帮我们包含对应的静态lib。也就是说，boost默认是以静态方式链接的，这样我们的工程属性最好也设为Multi-threaded (Debug)。如果想使用dll动态方式链接，需要预先定义宏：&lt;/div&gt;  &lt;div&gt; &lt;div&gt;&lt;span style="color: #0000ff;"&gt;#define&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;BOOST_ALL_DYN_LINK&lt;/span&gt;&lt;/div&gt; &lt;/div&gt;  &lt;div&gt;同样，此时boost也会默认帮我们包含对应的lib。如果不想使用boost提供的auto-link机制，或者对它的自动链接不太放心的话（其实大可不必担心），可以预先定义宏：&lt;/div&gt;  &lt;div&gt; &lt;div&gt;&lt;span style="color: #0000ff;"&gt;#define&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;BOOST_ALL_NO_LIB&lt;/span&gt;&lt;/div&gt; &lt;/div&gt;  &lt;div&gt;然后使用以下方法链接：&lt;/div&gt;  &lt;div&gt; &lt;div&gt;&lt;span style="color: #0000ff;"&gt;#pragma&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;comment(lib,&amp;nbsp;"boost_thread-vc90-mt-1_47.lib")&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;或&lt;/div&gt; &lt;div&gt; &lt;div&gt;&lt;span style="color: #0000ff;"&gt;#pragma&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;comment(lib,&amp;nbsp;"boost_thread-vc90-mt.lib")&lt;/span&gt;&lt;/div&gt; &lt;/div&gt;  &lt;div&gt;这两个lib其实是一样的，实在不明白boost编译时为什么每个库都要复制一份，难道是因为后者在升级boost版本后不用改代码？另外还有一个比较有用的宏：&lt;/div&gt;  &lt;div&gt; &lt;div&gt;&lt;span style="color: #0000ff;"&gt;#define&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;BOOST_LIB_DIAGNOSTIC&lt;/span&gt;&lt;/div&gt; &lt;/div&gt;  &lt;div&gt;它可以让VC在编译时的output窗口中输出程序具体链接了哪些boost库以及链接顺序。&lt;/div&gt;  &lt;p&gt;关于boost的auto-link机制，详细可以看看boost\config\auto_link.hpp里的代码，很容易可以读懂，并且值得我们学习。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #666699;"&gt;六、Linux下编译与配置的区别：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;div&gt; &lt;div&gt;我的Linux与Windows使用了共享目录，将Windows下的E:\SDK目录映射成了Linux下的/mnt/hgfs/sdk目录。&lt;/div&gt; &lt;div&gt;所以我的boost源文件根目录就是/mnt/hgfs/sdk/boost，cd进去。&lt;/div&gt; &lt;div&gt;首先需要编译bjam：&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt; &lt;div&gt;&lt;span style="color: #000000;"&gt;./&lt;/span&gt;&lt;span style="color: #000000;"&gt;bootstrap&lt;/span&gt;&lt;span style="color: #000000;"&gt;.&lt;/span&gt;&lt;span style="color: #000000;"&gt;sh&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;编译完成后，会在当前目录下生成bjam，接下来开始编译boost：&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt; &lt;div&gt; &lt;div&gt;&lt;span style="color: #000000;"&gt;./&lt;/span&gt;&lt;span style="color: #000000;"&gt;bjam&amp;nbsp;stage&amp;nbsp;--toolset&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;gcc&amp;nbsp;--with-date_time&amp;nbsp;--with-thread&amp;nbsp;--with-filesystem&amp;nbsp;--with-program_options&amp;nbsp;--stagedir&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;/mnt/hgfs/sdk/boost/bin/gcc&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;link&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;static&amp;nbsp;runtime-link&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;static&amp;nbsp;threading&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;multi&amp;nbsp;&lt;/span&gt;debug&amp;nbsp;&lt;span style="color: #000000;"&gt;release&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;这些参数的意义与Windows下完全一样，只不过编译器改成gcc，其他选项根据自己的需要进行设置。&lt;/div&gt; &lt;div&gt;生成的库文件就在bin/gcc/lib目录下，与vc9编译的一样。&lt;/div&gt; &lt;div&gt;如果将来不会再升级boost版本，那么可以把中间文件全部删掉，包括bin.v2目录和tools/jam/stage目录。&lt;/div&gt; &lt;div&gt;关于boost库的使用，为了不用每次写makefile都把boost的头文件和库文件的路径带着，而且为了让跨平台程序公用一套代码，&lt;/div&gt; &lt;div&gt;可以将boost的头文件和库文件路径加到Linux的环境变量中。打开/etc/profile，加入以下gcc环境变量：&amp;nbsp;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt; &lt;div&gt;&lt;span style="color: #000000;"&gt;CPLUS_INCLUDE_PATH&lt;/span&gt;&lt;span style="color: #000000;"&gt;=$&lt;/span&gt;&lt;span style="color: #000000;"&gt;CPLUS_INCLUDE_PATH:&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;/mnt/hgfs/sdk/boost&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt; export&amp;nbsp;CPLUS_INCLUDE_PATH&lt;br /&gt; &lt;br /&gt; LIBRARY_PATH&lt;/span&gt;&lt;span style="color: #000000;"&gt;=$&lt;/span&gt;&lt;span style="color: #000000;"&gt;LIBRARY_PATH:&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;/mnt/hgfs/sdk/boost/bin/gcc/lib&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt; export&amp;nbsp;LIBRARY_PATH&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;p&gt;这样就可以直接使用boost的头文件和库文件了，并且与Windows共用一套代码，非常方便。&lt;/p&gt; &lt;/div&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #666699;"&gt;七、可参考的网上流行的几篇文章：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;div&gt; &lt;div&gt;白话C++之安装boost：&lt;a title="http://www.d2school.com/bhcpp_book/2_5.php" href="http://www.d2school.com/bhcpp_book/2_5.php" target="_blank"&gt;http://www.d2school.com/bhcpp_book/2_5.php&lt;/a&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;Windows VC6编译安装Boost库：&lt;a title="http://blog.csdn.net/weekly123/archive/2007/11/23/1899188.aspx" href="http://blog.csdn.net/weekly123/archive/2007/11/23/1899188.aspx" target="_blank"&gt;http://blog.csdn.net/weekly123/archive/2007/11/23/1899188.aspx&lt;/a&gt;&lt;/div&gt; &lt;div&gt;boost编译步骤：&lt;a title="http://blog.csdn.net/aheroofeast/archive/2009/03/22/4015458.aspx" href="http://blog.csdn.net/aheroofeast/archive/2009/03/22/4015458.aspx" target="_blank"&gt;http://blog.csdn.net/aheroofeast/archive/2009/03/22/4015458.aspx&lt;/a&gt;&lt;/div&gt; &lt;div&gt;boost 1.35.0 Visual Studio 2008编译指南：&lt;a title="http://blog.csdn.net/benjiamen/archive/2008/07/12/2643705.aspx" href="http://blog.csdn.net/benjiamen/archive/2008/07/12/2643705.aspx" target="_blank"&gt;http://blog.csdn.net/benjiamen/archive/2008/07/12/2643705.aspx&lt;/a&gt;&lt;/div&gt; &lt;div&gt;VS2008下安装boost:&lt;a title="http://www.cnblogs.com/xdotnet/archive/2008/03/22/boost_install_config.html" href="http://www.cnblogs.com/xdotnet/archive/2008/03/22/boost_install_config.html" target="_blank"&gt;http://www.cnblogs.com/xdotnet/archive/2008/03/22/boost_install_config.html&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&amp;nbsp;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/2242508.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2011/11/09/2242508.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2010/11/17/1879531.html</id><title type="text">用VS.NET2008打包程序遇到不可恢复的生成错误的解决方案</title><summary type="text">参考：http://hi.baidu.com/huangyuyu373/blog/item/f5b28ca5924102fc9152ee0c.html我的原因是第4个，重新注册下Mergemod.dll 就可以了。</summary><published>2010-11-17T01:28:00Z</published><updated>2010-11-17T01:28:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2010/11/17/1879531.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2010/11/17/1879531.html"/><content type="html">&lt;p&gt;参考：&lt;a href="http://hi.baidu.com/huangyuyu373/blog/item/f5b28ca5924102fc9152ee0c.html"&gt;http://hi.baidu.com/huangyuyu373/blog/item/f5b28ca5924102fc9152ee0c.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;我的原因是第4个，重新注册下Mergemod.dll 就可以了。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/1879531.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2010/11/17/1879531.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2010/08/23/1806265.html</id><title type="text">推荐一个原型的设计软件 Mockups For Desktop</title><summary type="text">类似于涂鸦的样子，很容易上手，大家可以去看看可存：告别那一堆堆的纸质线框图吧…易用：UI控件支持自动拖拽，并且可以实现自动对齐；美观：手绘风格，简约清爽；丰富：从按钮到输入框，从导航条到页面、表格，甚至包括了最潮的Iphone元素；方便：对元素的修改除了工具栏外，还可以使用隐藏编辑框，支持快捷键；兼容：可使用XML语言保存元素，也可以导出PNG图片，可以插入到任何项目；跨平台：Wind...</summary><published>2010-08-23T03:03:00Z</published><updated>2010-08-23T03:03:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2010/08/23/1806265.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2010/08/23/1806265.html"/><content type="html">&lt;p&gt;类似于涂鸦的样子，很容易上手，大家可以去看看&lt;/p&gt;&lt;p&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #008000"&gt;可存：&lt;/span&gt;告别那一堆堆的纸质&lt;a title="线框图前的草图" href="http://www.ixda.org/node/21817" target="_blank"&gt;&lt;font color="#0063dc"&gt;线框图&lt;/font&gt;&lt;/a&gt;吧&amp;#8230;&lt;br /&gt;&lt;span style="color: #008000"&gt;易用：&lt;/span&gt;UI控件支持自动拖拽，并且可以实现自动对齐；&lt;br /&gt;&lt;span style="color: #008000"&gt;美观：&lt;/span&gt;&lt;a title="Balsamiq Mockups手绘风格" href="http://www.balsamiq.com/products/mockups/examples" target="_blank"&gt;&lt;font color="#0063dc"&gt;手绘风格&lt;/font&gt;&lt;/a&gt;，简约清爽；&lt;br /&gt;&lt;span style="color: #008000"&gt;丰富：&lt;/span&gt;从按钮到输入框，从导航条到页面、表格，甚至包括了最潮的Iphone元素；&lt;br /&gt;&lt;span style="color: #008000"&gt;方便：&lt;/span&gt;对元素的修改除了工具栏外，还可以使用隐藏编辑框，支持快捷键；&lt;br /&gt;&lt;span style="color: #008000"&gt;兼容：&lt;/span&gt;可使用XML语言保存元素，也可以导出PNG图片，可以插入到任何项目；&lt;br /&gt;&lt;span style="color: #008000"&gt;跨平台：&lt;/span&gt;Windows、Mac OS、Linux下都可以使用，还有能集成在Confluence，JIRA，和XWiki中的版本，对了，如果你没时间下载桌面版，还可以直接使用网页版的Balsamiq Mockups&amp;#8230;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;试用版本7天，不过作者提供了多种渠道获取key&lt;/p&gt;&lt;p&gt;官方网站：&lt;a href="http://www.balsamiq.com/"&gt;http://www.balsamiq.com/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;a href="http://files.cnblogs.com/86188281/Balsamiqkey.txt"&gt;&lt;img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/86188281/test.png" width="807" height="400" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/86188281/untitled.jpg" width="550" height="292" /&gt;&lt;a href="http://files.cnblogs.com/86188281/untitled.jpg"&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/1806265.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2010/08/23/1806265.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2010/08/05/1792929.html</id><title type="text">Grid++Report——推模式下填充子报表</title><summary type="text">虽说Grid++很容易在拉模式下做子报表，但是在推的模式下子报表应该如何来填充呢？场景介绍：为了报表的美观，当子报表为空的记录集时候，必须得画上3条记录。解决办法：在拉的模式下，显然不能实现，只好自己写代码实现，在填充子报表时候，先判断子报表的记录数。疑惑点：第一次做的时候，想当然的认为主报表填充完一笔记录，然后就会去关联子报表，填充子报表数据。但是 Grid++内 部不是这样的，它是填充完主...</summary><published>2010-08-05T03:05:00Z</published><updated>2010-08-05T03:05:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792929.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792929.html"/><content type="html">&lt;p&gt;虽说Grid++很容易在拉模式下做子报表，但是在推的模式下子报表应该如何来填充呢？&lt;/p&gt;&lt;p&gt;场景介绍：为了报表的美观，当子报表为空的记录集时候，必须得画上3条记录。&lt;/p&gt;&lt;p&gt;解决办法：在拉的模式下，显然不能实现，只好自己写代码实现，在填充子报表时候，先判断子报表的记录数。&lt;/p&gt;&lt;p&gt;疑惑点：第一次做的时候，想当然的认为主报表填充完一笔记录，然后就会去关联子报表，填充子报表数据。但是 Grid++内&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 部不是这样的，它是填充完主报表数据，然后再遍历主报表中的记录，遍历一条主报表数据，然后填充子报表。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;传递参数：当主报表填充完数据，就会触发在子报表的Initialize事件中，可以获取报表的字段值。有几条数据，就会触发几次子报表的Initialize。&lt;/p&gt;&lt;p&gt;例子下载 &lt;a href="http://files.cnblogs.com/86188281/GridReportSolution.7z"&gt;/Files/86188281/GridReportSolution.7z&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/1792929.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792929.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/86188281/archive/2010/08/05/1792887.html</id><title type="text">c# 对象的创建过程</title><summary type="text">1：分配静态成员的内存空间，值类型为0，引用类型为null2: 执行静态成员的赋值。3：执行静态的构造函数。4：分配成员的内存空间，值为0，引用类型为null5：执行成员的赋值。6：分配基类静态成员的内存空间，值为0，引用类型为null7：执行基类静态成员的赋值。8：执行基类的静态构造函数。9：基类的成员的声明和赋值。10：基类的构造函数11：构造函数注：静态的成员和构筑函数只运行一次。代码Cod...</summary><published>2010-08-05T02:47:00Z</published><updated>2010-08-05T02:47:00Z</updated><author><name>子风</name><uri>http://www.cnblogs.com/86188281/</uri></author><link rel="alternate" href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792887.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792887.html"/><content type="html">&lt;p&gt;1：分配静态成员的内存空间，值类型为0，引用类型为null&lt;/p&gt;&lt;p&gt;2: 执行静态成员的赋值。&lt;/p&gt;&lt;p&gt;3：执行静态的构造函数。&lt;/p&gt;&lt;p&gt;4：分配成员的内存空间，值为0，引用类型为null&lt;/p&gt;&lt;p&gt;5：执行成员的赋值。&lt;/p&gt;&lt;p&gt;6：分配基类静态成员的内存空间，值为0，引用类型为null&lt;/p&gt;&lt;p&gt;7：执行基类静态成员的赋值。&lt;/p&gt;&lt;p&gt;8：执行基类的静态构造函数。&lt;/p&gt;&lt;p&gt;9：基类的成员的声明和赋值。&lt;/p&gt;&lt;p&gt;10：基类的构造函数&lt;/p&gt;&lt;p&gt;11：构造函数&lt;/p&gt;&lt;p&gt;注：&lt;span style="color: red"&gt;静态的成员和构筑函数只运行一次。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: red"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('108dcce3-88a7-4f6c-83b0-d2023f55b8bf')"&gt;&lt;img style="display: none" id="code_img_opened_108dcce3-88a7-4f6c-83b0-d2023f55b8bf" class="code_img_opened" onclick="cnblogs_code_hide('108dcce3-88a7-4f6c-83b0-d2023f55b8bf',event)" src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"&gt;&lt;div id="cnblogs_code_open_108dcce3-88a7-4f6c-83b0-d2023f55b8bf" class="cnblogs_code_hide"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff"&gt;class&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Program&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Main(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;[]&amp;nbsp;args)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ClB&amp;nbsp;b&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClB();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;b&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClB();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.ReadLine();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;class&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClsA&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;readonly&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;strA&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;A&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Name&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;{&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.name&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;name;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClsA()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(strA);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strA&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;A&amp;nbsp;Changed&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(strA);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;A&amp;nbsp;staic&amp;nbsp;constructor!&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClsA()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;A&amp;nbsp;constructor!&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;class&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClB:ClsA&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;readonly&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;strB&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;B&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;age&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #800080"&gt;12&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClB()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(strB);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strB&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;B&amp;nbsp;Changed!&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(strB);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;B&amp;nbsp;static&amp;nbsp;constructor!&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;ClB()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(age);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;B&amp;nbsp;constructor!&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/86188281/aggbug/1792887.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/86188281/archive/2010/08/05/1792887.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
