zoukankan      html  css  js  c++  java
  • C++ 工具类 —— 词条类(Entry)

    Entry 以键值对(key-value pair)的形式定义。

    template <typename K, typename V>
    struct Entry{
        K key; V value;
        Entry(K k = K(), V v = V()) :key(k), value(v){}
        Entry(const Entry<K, V>& e) :key(e.key), value(e.value){}
        bool operator<(const Entry<K, V>& e) { return key < e.key; }
        bool operator>(const Entry<K, V>& e) { return key > e.key;  }
        bool operator==(const Entry<K, V>& e) { return key == e.key;  }
        bool operator!=(const Entry<K, V>& e) { return key != e.key; }
    };

    这样的重载了基本简单运算符重载的键值对(key-value pair)词条类有什么意义呢,就是有些特定问题下用到的特殊数据结构内部存储的未必是基本数据类型(比如 int、float 等可比较数据类型),而也可能存储的是一些较为复杂的键值对、结构体或者其他自定义的类。当存储在优先队列(大/小顶堆)或者二叉搜索树等数据结构时,需要这些复杂的元素支持比较特定的比较运算符。

  • 相关阅读:
    第09组 Alpha冲刺 (6/6)
    第09组 Alpha冲刺 (5/6)
    第09组 Alpha冲刺 (4/6)
    第09组 Alpha冲刺 (3/6)
    第09组 Alpha冲刺 (2/6)
    第09组 Alpha冲刺 (1/6)
    第9组(71) 需求分析报告
    第9组(71) 团队展示
    结对编程作业
    第08组 Alpha冲刺 总结
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9423699.html
Copyright © 2011-2022 走看看