建自己的模板库

10 分钟

高手都有个自己的“工具箱”:二分、自定义排序规则、前缀和、快速幂这些常写的片段,整理进一个文件,用时直接翻出来抄,不用每次从头憋。就像做手工先备好常用零件,效率高还不容易出错。下面这段自定义排序,就很适合收进模板库。

#include <bits/stdc++.h>
using namespace std;
int main() {
    vector<pair<int,int>> v = {{1,9},{1,3},{2,5}};
    // 模板:先按第一个升序,第一个相同再按第二个升序
    sort(v.begin(), v.end(), [](auto& a, auto& b){
        if (a.first != b.first) return a.first < b.first;
        return a.second < b.second;
    });
    for (auto& p : v) cout << p.first << "," << p.second << " ";
    // 输出 1,3 1,9 2,5
    return 0;
}

建议:每个片段都配一句注释写清“干什么、怎么用”,隔一阵回头看才认得。光存代码不写说明,时间一长自己都看不懂了。

小纸条

整理三个你最常用的代码片段。

登录 后可看答案

建自己的模板库 · C++ 入门 · op599 课程