[分享] c++ primer 4/e p.635 修正
Ch 16.1 Template的定義式 p.635
-----------以下為原文--------------------------------
有些讀者可能認為大小比較動作如果以 < 和 > 運算子執行,會更自然些 :
//預期的比較動作
if ( v1 < v2 ) return -1;
if ( v1 > v2 ) return 1;
return 0;
然而若寫成這樣 :
//預期的比較動作
if ( v1 < v2 ) return -1;
if ( v1 > v2 ) return 1;
return 0;
就是減少 「對引數型別的需求量 」。在這而,引數型別必須支援 < 但不必同時支援 >
---------原文結束-------------------------------------
黃色是我認為有問題的部分
應該把 v1 > v2 改成 v2 < v1
簡單來說當你使用 Template 時,不能夠預期每個 Template 的參數
都同時支援 < 跟 > ,也許會碰到只有支援 < 的參數。
所以減少支援可以免除掉一些不必要的錯誤
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.200.21
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1422347630.A.CCD.html
→
01/27 19:41, , 1F
01/27 19:41, 1F
→
01/27 19:51, , 2F
01/27 19:51, 2F
→
01/27 20:40, , 3F
01/27 20:40, 3F
→
01/27 20:52, , 4F
01/27 20:52, 4F
推
01/27 21:02, , 5F
01/27 21:02, 5F
推
01/27 21:39, , 6F
01/27 21:39, 6F
→
01/27 21:39, , 7F
01/27 21:39, 7F
→
01/27 22:03, , 8F
01/27 22:03, 8F
→
01/28 04:42, , 9F
01/28 04:42, 9F
→
01/28 04:45, , 10F
01/28 04:45, 10F
→
01/28 08:14, , 11F
01/28 08:14, 11F
※ 編輯: fwfly (15.211.131.254), 01/28/2015 09:52:37
→
01/28 10:20, , 12F
01/28 10:20, 12F
→
01/28 10:21, , 13F
01/28 10:21, 13F
→
01/28 10:36, , 14F
01/28 10:36, 14F
→
01/28 10:42, , 15F
01/28 10:42, 15F
推
01/28 18:04, , 16F
01/28 18:04, 16F
推
01/28 21:29, , 17F
01/28 21:29, 17F