讀C++ Templates-The Complete Guide第二章部分筆記

    函數模版
    定義一個函數以適用於不同的參數的方式。例如:
  1. template <typename T>
  2. inline T const& max (T const& a, T const& b)
  3. {
  4.     return a < b ? b : a;
  5. }
    函數模版仍然可以重載,例如:
  1. inline int const& max (int const& a, int const& b)
  2. {
  3. return a < b ? b : a;
  4. }
    1.函數在調用時,優先選擇non-template function,如果不存在纔會選擇template function。
    2.函數模版不支持類型轉換,因此,如果使用該調用max('a', 4.5);則會調用non-template function(重載的int函數)。
發佈了25 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章