“pair”是一个“简单的标准库类型,也是一种模板类型”,其常规的定义形式如下:
1 pair<string, string> anon; // holds two strings 2 pair<string, int> word_count; // holds a string and an int 3 pair<string, vector<int> > line; // holds string and vector<int>
这种定义形式一目了然,但正如《C++ Primer》所说:“pair 类型的使用相当繁琐”,考虑到效率和减少失误的因素,“如果需要定义多个相同的 pair 类型对象,可考虑利用 typedef 简化其声明:”,如下:
1 typedef pair<string, string> Author; 2 Author proust("Marcel", "Proust"); 3 Author joyce("James", "Joyce");
其它的模板类,如果遇到相似情形也可以借鉴此方法。