學習STL過程中的一些零散記錄4

2021-07-03 16:58:17 字數 650 閱讀 1523

template

struct myiter;

t& operator * () const ;

}template

typename i::value_type//返回值型別,必須加typename,因為i::value_type是乙個模板引數,在他被編譯器具現化前編譯器對他一無所知,typename告訴編譯器這//是乙個型別

func(i iter)

int main()

這裡有乙個隱晦的陷阱:並不是所有的迭代器都是class type的,如原始指標就不是。不是class type那麼我們就不能使用宣告內嵌型別了;

a.偏特化的定義:針對(任何)模板引數更進一步的條件限制所設計出的乙個特化版本,如templateclass aa;的乙個特化版本templateclassaa; 

b.萃取迭代器的特性,如下面這個類模板專門用來萃取迭代器的特性:

template

struct iterator_traits;

所謂萃取是指如果i定義有自己的value_type,則這個類模板萃取出的value_type就是i的value_type。

c.iterator_traits通過偏特化萃取原始指標的型別:

template

struct iterator_traits

記錄一些零散的知識。

因為本人沒有系統的學習過android,所以學的東西零零碎碎的,就在此記錄吧。1.每 0.3秒 執行一次任務 new timer schedule new timertask 0,300 2.在gridlayout 子控制項可以設定 layout columnspan 來橫跨幾列 layout ro...

題目記錄 一些零散題目

刪除乙個只包含字母q和n的字串中所有的 nq include include include includeusing namespace std int main 法二 int j 0 while j s.size 2 這個方法可以刪除所有的子串,上面兩個方法有點問題 size t m 0 whi...

一些零散的筆記

只是利用這裡記錄一下,以前沒有聽說過的 聽說過沒有用過的 有意義的東西,更類似於索引或者目錄。名稱 varnish cache server 特性 正規表示式,從知乎上看到的 應該也是引用了某個 的圖 批處理中 0的用法 set selfpath dp0 之後可以使用 selfpath 作為bat檔...