This commit is contained in:
chai2010
2015-12-21 12:55:18 +08:00
parent 1d7534e3c3
commit 7ec2f7cdc1
152 changed files with 54426 additions and 8958 deletions

View File

@@ -37,7 +37,7 @@
<link rel="next" href="../exercise/ex.html" />
<link rel="next" href="../errata.html" />
<link rel="prev" href="../ch13/ch13-04.html" />
@@ -48,7 +48,7 @@
<body>
<div class="book" data-level="13.5" data-chapter-title="幾點忠告" data-filepath="ch13/ch13-05.md" data-basepath=".." data-revision="Wed Dec 16 2015 10:54:29 GMT+0800 (中国标准时间)">
<div class="book" data-level="13.5" data-chapter-title="幾點忠告" data-filepath="ch13/ch13-05.md" data-basepath=".." data-revision="Mon Dec 21 2015 12:51:02 GMT+0800 (中国标准时间)">
<div class="book-summary">
@@ -146,7 +146,7 @@
<b>0.5.</b>
</a>
@@ -212,7 +212,7 @@
<b>1.3.</b>
査找重的行
査找重的行
</a>
@@ -227,7 +227,7 @@
<b>1.4.</b>
GIF動
GIF動
</a>
@@ -257,7 +257,7 @@
<b>1.6.</b>
穫取多個URL
穫取多個URL
</a>
@@ -479,7 +479,7 @@
<b>3.3.</b>
</a>
@@ -494,7 +494,7 @@
<b>3.4.</b>
爾型
爾型
</a>
@@ -544,7 +544,7 @@
<b>4.</b>
復閤數據類型
複合數據類型
</a>
@@ -857,7 +857,7 @@
<b>6.2.</b>
基於指對象的方法
基於指對象的方法
</a>
@@ -887,7 +887,7 @@
<b>6.4.</b>
方法值和方法達式
方法值和方法達式
</a>
@@ -953,7 +953,7 @@
<b>7.1.</b>
接口是
接口是
</a>
@@ -1073,7 +1073,7 @@
<b>7.9.</b>
示例: 達式求值
示例: 達式求值
</a>
@@ -1103,7 +1103,7 @@
<b>7.11.</b>
基於類型斷言識錯誤類型
基於類型斷言識錯誤類型
</a>
@@ -1214,7 +1214,7 @@
<b>8.2.</b>
示例: 併的Clock服務
示例: 併的Clock服務
</a>
@@ -1229,7 +1229,7 @@
<b>8.3.</b>
示例: 併的Echo服務
示例: 併的Echo服務
</a>
@@ -1274,7 +1274,7 @@
<b>8.6.</b>
示例: 併的Web爬蟲
示例: 併的Web爬蟲
</a>
@@ -1289,7 +1289,7 @@
<b>8.7.</b>
基於select的多路
基於select的多路
</a>
@@ -1304,7 +1304,7 @@
<b>8.8.</b>
示例: 併的字典遍歷
示例: 併的字典遍歷
</a>
@@ -1319,7 +1319,7 @@
<b>8.9.</b>
的退齣
的退齣
</a>
@@ -1354,7 +1354,7 @@
<b>9.</b>
基於共享變量的併
基於共享變量的併
</a>
@@ -1415,7 +1415,7 @@
<b>9.4.</b>
內存
內存
</a>
@@ -1460,7 +1460,7 @@
<b>9.7.</b>
示例: 併的非阻塞緩存
示例: 併的非阻塞緩存
</a>
@@ -1475,7 +1475,7 @@
<b>9.8.</b>
Goroutines和
Goroutines和
</a>
@@ -1748,7 +1748,7 @@
<b>12.1.</b>
何需要反射?
何需要反射?
</a>
@@ -1793,7 +1793,7 @@
<b>12.4.</b>
示例: 編碼S達式
示例: 編碼S達式
</a>
@@ -1823,7 +1823,7 @@
<b>12.6.</b>
示例: 解碼S達式
示例: 解碼S達式
</a>
@@ -1975,50 +1975,14 @@
</li>
<li class="chapter " data-level="14" data-path="exercise/ex.html">
<a href="../exercise/ex.html">
<i class="fa fa-check"></i>
<b>14.</b>
習題解答
</a>
<ul class="articles">
<li class="chapter " data-level="14.1" data-path="exercise/ex-ch1.html">
<a href="../exercise/ex-ch1.html">
<i class="fa fa-check"></i>
<b>14.1.</b>
第一章 入門
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="15" data-path="errata.html">
<li class="chapter " data-level="14" data-path="errata.html">
<a href="../errata.html">
<i class="fa fa-check"></i>
<b>15.</b>
<b>14.</b>
勘誤
</a>
@@ -2060,9 +2024,9 @@
<section class="normal" id="section-">
<h2 id="135-&#x5E7E;&#x9EDE;&#x5FE0;&#x544A;">13.5. &#x5E7E;&#x9EDE;&#x5FE0;&#x544A;</h2>
<p>&#x6211;&#x5011;&#x5728;&#x524D;&#x4E00;&#x7AE0;&#x7D50;&#x5C3E;&#x7684;&#x6642;&#x5019;, &#x6211;&#x5011;&#x8B66;&#x544A;&#x8981;&#x8B39;&#x614E;&#x4F7F;&#x7528;&#x53CD;&#x5C04;. &#x90A3;&#x4E9B;&#x8B66;&#x544A;&#x8855;&#x6A23;&#x9069;&#x7528;&#x65BC;&#x672C;&#x7AE0;&#x7684; unsafe &#x5305;.</p>
<p>&#x9AD8;&#x7D1A;&#x8A9E;&#x8A00;&#x4F7F;&#x5F97;&#x7A0B;&#x5E8F;&#x54E1;&#x4E0D;&#x7528;&#x5728;&#x95DC;&#x7E6B;&#x771E;&#x6B63;&#x904B;&#x884C;&#x7A0B;&#x5E8F;&#x7684;&#x6307;&#x4EE4;&#x7D30;&#x7BC0;, &#x8855;&#x6642;&#x4E5F;&#x4E0D;&#x518D;&#x9700;&#x8981;&#x95DC;&#x8A3B;&#x8A31;&#x591A;&#x5982;&#x5167;&#x90E8;&#x4F48;&#x4FB7;&#x4E4B;&#x985E;&#x7684;&#x7121;&#x95DC;&#x5BE6;&#x73FE;&#x7D30;&#x7BC0;. &#x56E0;&#x70BA;&#x9019;&#x500B;&#x7D76;&#x7DE3;&#x7684;&#x62BD;&#x8C61;&#x5C64;, &#x6211;&#x5011;&#x53EF;&#x4EE5;&#x7DE8;&#x5BEB;&#x5B89;&#x5168;&#x5065;&#x58EF;&#x7684;, &#x4F75;&#x4E14;&#x53EF;&#x4EE5;&#x904B;&#x884C;&#x5728;&#x4E0D;&#x8855;&#x64CD;&#x4F5C;&#x7E6B;&#x7D71;&#x4E0A;&#x7684;&#x5177;&#x6709;&#x9AD8;&#x5EA6;&#x53EF;&#x79FB;&#x690D;&#x6027;&#x7684;&#x7A0B;&#x5E8F;.</p>
<p>&#x4F46;&#x662F; unsafe &#x5305;, &#x8B93;&#x7A0B;&#x5E8F;&#x54E1;&#x53EF;&#x4EE5;&#x900F;&#x904E;&#x9019;&#x500B;&#x7D76;&#x7DE3;&#x7684;&#x62BD;&#x8C61;&#x5C64;&#x4F7F;&#x7528;&#x4F7F;&#x7528;&#x4E00;&#x4E9B;&#x5FC5;&#x8981;&#x7684;&#x529F;&#x80FD;, &#x6216;&#x8005;&#x662F;&#x70BA;&#x4E86;&#x66F4;&#x9AD8;&#x7684;&#x6027;&#x80FD;. &#x4EE3;&#x50F9;&#x5C31;&#x662F;&#x72A7;&#x7272;&#x4E86;&#x53EF;&#x79FB;&#x690D;&#x6027;&#x548C;&#x7A0B;&#x5E8F;&#x5B89;&#x5168;, &#x56E0;&#x6B64;&#x4F7F;&#x7528; unsafe &#x662F;&#x4E00;&#x500B;&#x5371;&#x96AA;&#x7684;&#x884C;&#x70BA;. &#x6211;&#x5011;&#x5C0D;&#x4F55;&#x6642;&#x4EE5;&#x53CA;&#x5982;&#x4F55;&#x4F7F;&#x7528;unsafe&#x5305;&#x7684;&#x5EFA;&#x8B70;&#x548C;&#x6211;&#x5011;&#x5728;11.5&#x7BC0;&#x63D0;&#x5230;&#x7684;Knuth&#x5C0D;&#x904E;&#x65E9;&#x512A;&#x5316;&#x7684;&#x5EFA;&#x8B70;&#x985E;&#x4F3C;. &#x5927;&#x591A;&#x6578;Go&#x7A0B;&#x5E8F;&#x54E1;&#x53EF;&#x80FD;&#x6C38;&#x9060;&#x4E0D;&#x6703;&#x9700;&#x8981;&#x76F4;&#x63A5;&#x4F7F;&#x7528;unsafe&#x5305;. &#x7576;&#x7136;, &#x6C38;&#x9060;&#x90FD;&#x6703;&#x6709;&#x4E00;&#x4E9B;&#x7528; unsafe &#x5305;&#x5BE6;&#x73FE;&#x6703;&#x66F4;&#x7C21;&#x55AE;&#x7684;&#x5834;&#x666F;. &#x5982;&#x679C;&#x78BA;&#x5BE6;&#x8A8D;&#x70BA;&#x4F7F;&#x7528; unsafe &#x5305;&#x662F;&#x6700;&#x7406;&#x60F3;&#x7684;&#x65B9;&#x5F0F;, &#x90A3;&#x9EBC;&#x61C9;&#x8A72;&#x76E1;&#x53EF;&#x80FD;&#x5C07;&#x5B83;&#x9650;&#x88FD;&#x8F03;&#x5C0F;&#x7684;&#x7BC4;&#x570D;, &#x90A3;&#x6A23;&#x5176;&#x4ED6;&#x4EE3;&#x78BC;&#x5FFD;&#x7565;unsafe&#x7684;&#x5F71;&#x97FF;.</p>
<p>&#x6211;&#x5011;&#x5728;&#x524D;&#x4E00;&#x7AE0;&#x7D50;&#x5C3E;&#x7684;&#x6642;&#x5019;, &#x6211;&#x5011;&#x8B66;&#x544A;&#x8981;&#x8B39;&#x614E;&#x4F7F;&#x7528;&#x53CD;&#x5C04;. &#x90A3;&#x4E9B;&#x8B66;&#x544A;&#x540C;&#x6A23;&#x9069;&#x7528;&#x65BC;&#x672C;&#x7AE0;&#x7684; unsafe &#x5305;.</p>
<p>&#x9AD8;&#x7D1A;&#x8A9E;&#x8A00;&#x4F7F;&#x5F97;&#x7A0B;&#x5E8F;&#x54E1;&#x4E0D;&#x7528;&#x5728;&#x95DC;&#x7E6B;&#x771E;&#x6B63;&#x904B;&#x884C;&#x7A0B;&#x5E8F;&#x7684;&#x6307;&#x4EE4;&#x7D30;&#x7BC0;, &#x540C;&#x6642;&#x4E5F;&#x4E0D;&#x518D;&#x9700;&#x8981;&#x95DC;&#x8A3B;&#x8A31;&#x591A;&#x5982;&#x5167;&#x90E8;&#x5E03;&#x5C40;&#x4E4B;&#x985E;&#x7684;&#x7121;&#x95DC;&#x5BE6;&#x73FE;&#x7D30;&#x7BC0;. &#x56E0;&#x7232;&#x9019;&#x500B;&#x7D76;&#x7DE3;&#x7684;&#x62BD;&#x8C61;&#x5C64;, &#x6211;&#x5011;&#x53EF;&#x4EE5;&#x7DE8;&#x5BEB;&#x5B89;&#x5168;&#x5065;&#x58EF;&#x7684;, &#x4F75;&#x4E14;&#x53EF;&#x4EE5;&#x904B;&#x884C;&#x5728;&#x4E0D;&#x540C;&#x64CD;&#x4F5C;&#x7E6B;&#x7D71;&#x4E0A;&#x7684;&#x5177;&#x6709;&#x9AD8;&#x5EA6;&#x53EF;&#x79FB;&#x690D;&#x6027;&#x7684;&#x7A0B;&#x5E8F;.</p>
<p>&#x4F46;&#x662F; unsafe &#x5305;, &#x8B93;&#x7A0B;&#x5E8F;&#x54E1;&#x53EF;&#x4EE5;&#x900F;&#x904E;&#x9019;&#x500B;&#x7D76;&#x7DE3;&#x7684;&#x62BD;&#x8C61;&#x5C64;&#x4F7F;&#x7528;&#x4F7F;&#x7528;&#x4E00;&#x4E9B;&#x5FC5;&#x8981;&#x7684;&#x529F;&#x80FD;, &#x6216;&#x8005;&#x662F;&#x7232;&#x4E86;&#x66F4;&#x9AD8;&#x7684;&#x6027;&#x80FD;. &#x4EE3;&#x50F9;&#x5C31;&#x662F;&#x72A7;&#x7272;&#x4E86;&#x53EF;&#x79FB;&#x690D;&#x6027;&#x548C;&#x7A0B;&#x5E8F;&#x5B89;&#x5168;, &#x56E0;&#x6B64;&#x4F7F;&#x7528; unsafe &#x662F;&#x4E00;&#x500B;&#x5371;&#x96AA;&#x7684;&#x884C;&#x7232;. &#x6211;&#x5011;&#x5C0D;&#x4F55;&#x6642;&#x4EE5;&#x53CA;&#x5982;&#x4F55;&#x4F7F;&#x7528;unsafe&#x5305;&#x7684;&#x5EFA;&#x8B70;&#x548C;&#x6211;&#x5011;&#x5728;11.5&#x7BC0;&#x63D0;&#x5230;&#x7684;Knuth&#x5C0D;&#x904E;&#x65E9;&#x512A;&#x5316;&#x7684;&#x5EFA;&#x8B70;&#x985E;&#x4F3C;. &#x5927;&#x591A;&#x6578;Go&#x7A0B;&#x5E8F;&#x54E1;&#x53EF;&#x80FD;&#x6C38;&#x9060;&#x4E0D;&#x6703;&#x9700;&#x8981;&#x76F4;&#x63A5;&#x4F7F;&#x7528;unsafe&#x5305;. &#x7576;&#x7136;, &#x6C38;&#x9060;&#x90FD;&#x6703;&#x6709;&#x4E00;&#x4E9B;&#x7528; unsafe &#x5305;&#x5BE6;&#x73FE;&#x6703;&#x66F4;&#x7C21;&#x55AE;&#x7684;&#x5834;&#x666F;. &#x5982;&#x679C;&#x78BA;&#x5BE6;&#x8A8D;&#x7232;&#x4F7F;&#x7528; unsafe &#x5305;&#x662F;&#x6700;&#x7406;&#x60F3;&#x7684;&#x65B9;&#x5F0F;, &#x90A3;&#x9EBD;&#x61C9;&#x8A72;&#x76E1;&#x53EF;&#x80FD;&#x5C07;&#x5B83;&#x9650;&#x88FD;&#x8F03;&#x5C0F;&#x7684;&#x8303;&#x570D;, &#x90A3;&#x6A23;&#x5176;&#x4ED6;&#x4EE3;&#x78BC;&#x5FFD;&#x7565;unsafe&#x7684;&#x5F71;&#x97FF;.</p>
<p>&#x73FE;&#x5728;, &#x628A;&#x6700;&#x5F8C;&#x5169;&#x7AE0;&#x62CB;&#x5165;&#x8166;&#x5F8C;&#x5427;. &#x7DE8;&#x5BEB;&#x4E00;&#x4E9B;&#x5BE6;&#x5728;&#x7684;&#x61C9;&#x7528;. &#x9060;&#x96E2;reflect&#x7684;unsafe&#x5305;, &#x9664;&#x975E;&#x4F60;&#x78BA;&#x5BE6;&#x9700;&#x8981;&#x5B83;&#x5011;.</p>
<p>&#x7528;Go&#x5FEB;&#x6A02;&#x5730;&#x7DE8;&#x7A0B;. &#x6211;&#x5011;&#x5E0C;&#x671B;&#x4F60;&#x80FD;&#x50CF;&#x6211;&#x5011;&#x4E00;&#x6A23;&#x559C;&#x6B61;Go&#x8A9E;&#x8A00;.</p>
@@ -2078,7 +2042,7 @@
<a href="../ch13/ch13-04.html" class="navigation navigation-prev " aria-label="Previous page: 通過cgo調用C代碼"><i class="fa fa-angle-left"></i></a>
<a href="../exercise/ex.html" class="navigation navigation-next " aria-label="Next page: 習題解答"><i class="fa fa-angle-right"></i></a>
<a href="../errata.html" class="navigation navigation-next " aria-label="Next page: 勘誤"><i class="fa fa-angle-right"></i></a>
</div>
</div>