C++ set 构造函数2024年8月30日 | 阅读4分钟 集合构造函数有以下五种用法:
语法默认构造函数范围构造函数拷贝构造函数移动构造函数初始化列表构造函数参数comp: 一个比较函数对象,它接受两个键参数,如果第一个参数在第二个参数之前,则返回 true,否则返回 false。默认情况下,它使用 less<key_type> 谓词。 alloc: 一个用于此容器所有内存分配的分配器对象。 first: 范围中第一个位置的输入迭代器。 last: 范围中最后一个位置的输入迭代器。 x: 另一个相同类型的集合对象。 il: 一个初始化列表对象,从中复制元素。 返回值构造函数从不返回任何值。 复杂度对于空构造函数和移动构造函数,复杂度将是常量。 对于所有其他情况,如果元素已经排序,则复杂度将与迭代器之间的距离成线性关系。 迭代器有效性如果集合容器的元素在移动构造函数中被移动,则与 x 相关的所有指针、迭代器和引用都将失效。 数据竞争所有复制的元素都将被访问。 异常安全如果抛出异常,则没有影响。 示例 1让我们看一个默认构造函数的简单示例 输出 Size of set = 0 在上面的例子中,s 是一个空集合,因此大小为 0。 示例 2让我们看一个范围构造函数的简单示例 输出 Size of set container myset is: 5 在上面的例子中,集合 myset 是用 evens 的元素构造的。 示例 3让我们看一个拷贝构造函数的简单示例 输出 Size of set container s1 is : 2 Size of new set container s2 is : 2 在上面的例子中,s2 是 s1 集合的一个副本。 示例 4让我们看一个移动构造函数的简单示例 输出 Size of set container s1 is : 2 Size of new set container s2 is : 2 在上面的例子中,s1 的内容被移动到 s2 集合。 示例 5让我们看一个初始化列表构造函数的简单示例 输出 Size of set container fruit is : 5 上面的例子创建了一个以字符串作为键的集合 fruit,并用 initializer_list 对其进行初始化。 下一个主题C++ Set 析构函数 |
C++ set swap() C++ swap() 函数用于交换(或互换)两个集合的内容,但两个集合必须是相同类型,尽管大小可能不同。语法 void swap (set& x); 参数 x: 要交换内容的集合容器。返回值 无 复杂度 常量。迭代器有效性 所有引用、迭代器和指向...
阅读 4 分钟
C++ std operator< Operator< 是 C++ 中 set 的非成员重载函数。此函数用于检查第一个集合是否小于其他集合。注意:Operator < 顺序比较集合的元素,比较将在第一次不匹配时停止。语法 template <class T, class...
阅读 4 分钟
C++ std swap() C++ std swap(set) 是 C++ 中 set 的非成员函数。它用于交换(或互换)两个集合(即 x 和 y)的内容,但两个集合必须是相同类型,尽管大小可能不同。语法 template <class T, class Compare,...
阅读 3 分钟
C++ set begin() C++ 用于返回指向集合容器第一个元素的迭代器。语法 iterator begin(); ...
阅读 3 分钟
C++ set crbegin() C++ 用于返回指向集合容器中最后一个元素的常量反向迭代器。集合的常量反向迭代器以反向方向移动,并递增直到到达集合容器的开头(第一个元素)并且...
阅读 3 分钟
C++ set size() C++ set size() 函数用于查找集合容器中存在的元素数量。语法 成员类型 size_type 是一个无符号整型。size_type size() const; // 直到 C++ 11 size_type...
阅读 3 分钟
C++ std operator>= C++ std Operator>= 是 C++ 中 set 的非成员重载函数。此函数用于检查第一个集合是否大于或等于其他集合。注意:Operator >= 顺序比较集合的元素,比较将在第一次不匹配时停止...
5 分钟阅读
C++ set rend() C++ 用于返回指向集合末尾(不是最后一个元素,而是最后一个元素之后)的反向迭代器。这类似于非反向容器的第一个元素之前的元素。注意:- 这是一个...
阅读 4 分钟
C++ set get_allocator() C++ 用于返回分配器对象的副本,该对象有助于构造集合容器。语法 allocator_type get_allocator() const; //直到 C++ 11 allocator_type get_allocator() const noexcept; //自 C++ 11 起 参数 无 返回值 返回关联的分配器...
阅读 4 分钟
C++ std operator!= C++ std operator!= 是 set 的非成员重载函数。此函数用于检查两个集合是否相等。注意:集合对象之间的比较基于元素的成对比较。如果两个集合...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India