2023.1.6 学习总结

news/2024/10/30 9:25:33/

1.set容器的相关函数

set,顾名思义是“集合”的意思,在set中元素都是唯一的,而且默认情况下会对元素自动进行升序排列。

set容器

包含头文件:

#include<set>

set中只能用insert函数实现数据的输入。

set<int> se;
se.insert(1);

查找函数find的使用:

查找key是否存在,若存在,返回该键的元素的迭代器,若不存在,返回set.end();

set<int> se;
se.insert(1);
se.insert(2);if (se.find(3) == se.end()) {cout << "NO" << endl;
}

swap函数:交换两个集合容器

#include <iostream>
#include<set>
using namespace std;
int main()
{set<int> se;se.insert(1);se.insert(2);set<int> sk;sk.insert(4);sk.insert(3);for (auto it = se.begin(); it != se.end(); it++) {cout << *it << " ";}for (auto it = sk.begin(); it != sk.end(); it++) {cout << *it << " ";}cout << endl;se.swap(sk);for (auto it = se.begin(); it != se.end(); it++) {cout << *it << " ";}for (auto it = sk.begin(); it != sk.end(); it++) {cout << *it << " ";}return 0;
}

erase函数:

erase(pos):删除pos迭代器所指的元素,返回下一个元素的迭代器(删小的)

erase(elem):删除容器中值为elem的元素

erase(beg,end):删除区间(beg(),end())的所有元素,返回下一个元素的迭代器

#include <iostream>
#include<set>
using namespace std;
int main()
{set<int> se;se.insert(1);se.insert(2);se.insert(7);se.insert(3);auto temp=se.erase(se.begin());cout << *temp << endl;se.erase(2);for (auto it = se.begin(); it != se.end(); it++) {cout << *it << " ";}return 0;
}

count函数:统计key的元素个数(0或者1)

#include <iostream>
#include<set>
using namespace std;
int main()
{set<int> se;se.insert(1);se.insert(2);se.insert(7);se.insert(3);cout << se.count(2) << endl;cout << se.count(9) << endl;return 0;
}

size():判断容器中元素的数目

empty():判断容器是否为空

clear():清除所有元素


2.multiset,set自定义排序:

#include <iostream>
#include<set>
using namespace std;struct rec {int x, y;
};struct cmp {bool operator()(const rec& a, const rec& b)const {return a.x > b.x;}
};class temp {
public:bool operator()(const rec& a, const rec& b)const {return a.x > b.x;}
};set<rec, temp>h;
//set<rec, cmp>h; 使用这两个都可以int main()
{rec r1;r1.x = 1;r1.y = 2;rec r2;r2.x = 3;r2.y = 4;h.insert(r1);h.insert(r2);for (auto it = h.begin(); it != h.end(); it++) {cout << (*it).x << " ";}return 0;
}

3.C++错误C3848:具有类型“const MyCompare”的表达式会丢失一些 const-volatile 限定符以调用“bool MyCompare::operator ()(int,int)

在Visual Studio 2019练习C++中map容器时,自定义排序函数

//仿函数
class MyCompare
{
public://重载bool operator()(int v1, int v2){return v1 > v2;}
};

解决方案:
在仿函数中加入const

class MyCompare
{
public://重载bool operator()(int v1, int v2)const {return v1 > v2;}
};

4.int的范围:

int的取值范围为-2147483648~2147483647(-2^{31} \sim 2^{31}-1

也就是说输入数据在0-10的九次方不用考虑输入溢出,用int就行

 

5.如何输出%

#include <iostream>using namespace std;int main()
{printf("100%%");return 0;
}

 


http://www.ppmy.cn/news/9821.html

相关文章

2023.1.5单词打卡

agitate v.煽动&#xff0c;鼓动&#xff1b;使激动&#xff1b;搅拌 turbine n.涡轮机&#xff0c;汽轮机 craftsmanship n.技术&#xff1b;技艺 retrieve v.取回&#xff1b;挽回&#xff0c;找回&#xff1b;检索 iceberg n.冰山&#xff1b;显露部分 brake n./v.刹车…

海康摄像头CVE-2021-36260漏洞复现

海康摄像头CVE-2021-36260漏洞复现1.漏洞介绍2.手动测试2.1.摄像头版本2.2.漏洞复现2.2.1.更改URL2.2.2.抓包修改数据2.2.3.更换请求路径2.2.4.后期利用3.POC测试3.1.下载POC3.2.运行POC3.3.测试漏洞3.4.执行命令1.漏洞介绍 攻击者利用该漏洞可以用无限制的 root shell 来完全控…

【代码题】栈的应用

目录 1.有效的括号 2.逆波兰表达式求值 1.有效的括号 点击进入该题 https://leetcode.cn/problems/valid-parentheses/description/ 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有…

Node.js 中 session验证登录

在前一篇内容中讲到这个cookie实现验证登录&#xff0c;cookie是存储在客户端的&#xff0c;而session是存储在服务器的&#xff0c;相比较session的安全性会更高&#xff0c;session对象存储特定用户会话所需要的属性以及配置信息&#xff0c;服务通过session对象将用户的信息…

C语言机票销售系统[2023-01-04]

C语言机票销售系统[2023-01-04] 机票销售系统 一 系统要求&#xff1a; 要求用C 语言实现一个模拟机票销售的系统&#xff0c;基本功能如下&#xff1a; &#xff08;1&#xff09;、通过该系统&#xff0c;超级用户可以添加用户&#xff08;包括业务员角色和乘客角色&#xf…

中国电信分布式物联网操作系统CTWing OS 2.0发布!

近日&#xff0c;2022天翼数字科技生态大会云上隆重开幕&#xff0c;由中国电信天翼物联自主研发的分布式物联网操作系统CTWing OS 2.0最新成果正式发布。CTWing OS 2.0在体系架构、系统功能、系统性能、稳定保障、安全可信、行业赋能六大要素上实现全面提升&#xff0c;全方位…

rabbitmq+netcore6 【3】Publish/Subscribe:发布/订阅

文章目录1&#xff09;前言2&#xff09;临时队列3&#xff09;绑定4&#xff09;综合以上代码准备工作1、生产者2、消费者13、消费者25&#xff09;验证官网教程原文链接&#xff1a; https://www.rabbitmq.com/tutorials/tutorial-three-dotnet.html翻译版参考链接&#xff1…

SpringBoot解决全局和局部跨域问题的两种方式

前言 在如今前后端分离的开发模式下&#xff0c;跨域是一个非常经典的问题&#xff0c;解决的方式也有很多&#xff0c;比如代理服务器&#xff0c;使用JSONP 我之前也写过一篇解决跨域问题的文章&#xff0c;感兴趣的可以参考&#xff1a;解决Vue前后端跨域问题的多种方式 …