当前位置: 首页 > news >正文

C++学习 --pair

目录

1, 什么是pair

2, 创建pair

2-1, 标准数据类型

2-2, 自定义数据类型

3, 查询元素

3-1, 标准数据类型

3-2, 自定义数据类型


1, 什么是pair

数据以键值对形式存放的容器, 第一个是, 第二个是

2, 创建pair

pair<数据类型, 数据类型> 对象名, 可创建一个pair, 数据类型可以是标准数据类型, 也可以是自定义类型

2-1, 标准数据类型

//键数据类型为string, 值数据类型为int
//pair<string, int> px为创建pair对象, 后面的部分是对其进行赋值
pair<string, int> p1(pair<string, int>("aaa", 1));
pair<string, int> p2 = make_pair("bbb", 2);
pair<string, int> p3(map<string, int>::value_type("ccc", 3));

2-2, 自定义数据类型

Myclass1 mc_1("张三", 10);
Myclass2 mc_2("李四", 20);
//键数据类型为MyClass, 值数据类型为MyClass2
pair<Myclass1, Myclass2> p1(mc_1, mc_2);
pair<Myclass1, Myclass2> p2 = make_pair(mc_1, mc_2);
pair<Myclass1, Myclass2> p3(map<Myclass1, Myclass2>::value_type(mc_1, mc_2));

3, 查询元素

通过对象名.first, 访问pair的第一个元素, 对象名.second, 访问pair的第二个元素

3-1, 标准数据类型

#include <iostream>
#include <string>
#include <map>using namespace std;void print_pair_1(pair<string, int>& p)
{cout << "键:" << p.first  << endl;cout << "值:" << p.second << endl;
}int main()
{pair<string, int> p1 = make_pair("bbb", 2);print_pair_1(p1);system("pause");return 0;
}

3-2, 自定义数据类型

#include <iostream>
#include <string>
#include <map>using namespace std;class Myclass1
{
public:Myclass1(string name, int age) : m_name(name), m_age(age) {};string m_name;int m_age;
};class Myclass2
{
public:Myclass2(string name, int age) : m_name(name), m_age(age) {};string m_name;int m_age;
};void print_pair_1(pair<Myclass1, Myclass2>& p)
{cout << "键:" << p.first.m_name  << " " << p.first.m_age << endl;cout << "值:" << p.second.m_name << " " << p.second.m_age << endl;
}int main()
{Myclass1 mc_1("张三", 10);Myclass2 mc_2("李四", 20);pair<Myclass1, Myclass2> p1 = make_pair(mc_1, mc_2);print_pair_1(p1);system("pause");return 0;
}

相关文章:

C++学习 --pair

目录 1&#xff0c; 什么是pair 2&#xff0c; 创建pair 2-1&#xff0c; 标准数据类型 2-2&#xff0c; 自定义数据类型 3&#xff0c; 查询元素 3-1&#xff0c; 标准数据类型 3-2&#xff0c; 自定义数据类型 1&#xff0c; 什么是pair 数据以键值对形式存放的容器&…...

Android Frgment中onActivityResult无效的问题

前言 最近在fragment中使用二维码扫描 发现拿不到onActivityResult返回 查了资料说是启动模式 或者是返回值为负数 断点调试 发现根本没走onActivityResult方法 问题 onActivityResult 在附属Activity中被拦截了 所以没有触发该方法 解决 在Fragment所依赖的Activity中执…...

【C#二开业务冠邑】通过界面查看数据来源

前言 重构框架&#xff08;CS【C#】转BS【Java】&#xff09;时&#xff0c;突然发现公司的代码和数据库&#xff0c;有部分都没有写注释&#xff0c;嘎嘎&#xff0c;这不非常影响开发效率&#xff0c;于是乎&#xff0c;开始帮公司整理表结构和数据来源&#xff0c;也从而加…...

使用大语言模型 LLM 做文本分析

本文主要分享 传统聚类算法 LLM与嵌入算法 嵌入算法聚类 LLM的其他用法 聚类是一种无监督机器学习技术&#xff0c;旨在根据相似的数据点的特征将其分组在一起。使用聚类成簇&#xff0c;有助于解决各种问题&#xff0c;例如客户细分、异常检测和文本分类等。尽管传统的聚…...

Windows本地搭建rtmp推流服务

前言 开发时偶尔需要使用rtmp直播流做视频流测试&#xff0c;苦于网上开源的rtmp视频流都已经失效&#xff0c;无奈只好尝试在本地自己搭建一个rtmp的推流服务&#xff0c;方便测试使用。 一、工具准备 Nginx&#xff1a;使用nginx-rtmp-win64推流工具FFmpeg&#xff1a;官方…...

机器学习二元分类 二元交叉熵 二元分类例子

二元交叉熵损失函数 深度学习中的二元分类损失函数通常采用二元交叉熵&#xff08;Binary Cross-Entropy&#xff09;作为损失函数。 二元交叉熵损失函数的基本公式是&#xff1a; L(y, y_pred) -y * log(y_pred) - (1 - y) * log(1 - y_pred)其中&#xff0c;y是真实标签&…...

Postgresql运维信息(一)

1. 运维系统视图 PostgreSQL 提供了一系列系统视图和函数&#xff0c;可以用于获取数据库的运维统计信息。这些信息对于监控和优化数据库性能非常有用。以下是一些常用的 PostgreSQL 运维统计信息&#xff1a; 1.1. pg_stat_activity 这个系统视图包含了当前数据库连接的活动…...

Jupyter Notebook的下载安装与使用教程_Python数据分析与可视化

Jupyter Notebook的下载安装与使用 Jupyter简介下载与安装启动与创建NotebookJupyter基本操作 在计算机编程领域&#xff0c;有一个很强大的工具叫做Jupyter。它不仅是一个集成的开发环境&#xff0c;还是一个交互式文档平台。对于初学者来说&#xff0c;Jupyter提供了友好的界…...

快速入门:构建您的第一个 .NET Aspire 应用程序

##前言 云原生应用程序通常需要连接到各种服务&#xff0c;例如数据库、存储和缓存解决方案、消息传递提供商或其他 Web 服务。.NET Aspire 旨在简化这些类型服务之间的连接和配置。在本快速入门中&#xff0c;您将了解如何创建 .NET Aspire Starter 应用程序模板解决方案。 …...

主流开源大语言模型的微调方法

文章目录 模型ChatGLM2网址原生支持微调方式 ChatGLM3网址原生支持微调方式 Baichuan 2网址原生支持微调方式 Qwen网址原生支持微调方式 框架FireflyEfficient-Tuning-LLMsSuperAdapters 模型 ChatGLM2 网址 https://github.com/thudm/chatglm2-6b 原生支持微调方式 https…...

Django DRF权限组件

在Django的drf框架内的权限组件&#xff0c;如果遇到多个权限认证类&#xff0c;是需要所有的权限类都要通过验证&#xff0c;才能访问视图。 一、简单示例 1、per.py 自定义权限类 from rest_framework.permissions import BasePermission import randomclass MyPerssion(B…...

leetcode每日一题31

搜索旋转排序数组 那……二分法呗 数组中的数可以相同 比 33. 搜索旋转排序数组 多了一个「有重复元素」&#xff0c;导致无法根据 num > nums[0] 来判断 num 在哪一半&#xff0c;比如 [1,1,1,1,1,2,1,1,1] 旋转数组两头相等&#xff0c;元素 1 可能在左半边可能在右半边 …...

使用Pytorch测试cuda设备的性能(单卡或多卡并行)

以下CUDA设备泛指NVIDIA显卡 或 启用ROCm的AMD显卡 测试环境&#xff1a; Distributor ID: UbuntuDescription: Ubuntu 22.04.3 LTSRelease: 22.04Codename: jammy 1.首先&#xff0c;简单使用torch.ones测试CUDA设备 import torch import timedef cuda_benchmark(device_id…...

SpringBoot-AOP-基础到进阶

SpringBoot-AOP AOP基础 学习完spring的事务管理之后&#xff0c;接下来我们进入到AOP的学习。 AOP也是spring框架的第二大核心&#xff0c;我们先来学习AOP的基础。 在AOP基础这个阶段&#xff0c;我们首先介绍一下什么是AOP&#xff0c;再通过一个快速入门程序&#xff0c…...

Midjourney绘画提示词Prompt参考学习教程

一、工具 SparkAi&#xff1a; SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软…...

美国费米实验室SQMS启动“量子车库”计划!30+顶尖机构积极参与

​11月6日&#xff0c;美国能源部费米国家加速器实验室(SQMS)正式启动了名为“量子车库”的全新旗舰量子研究设施。这个6,000平方英尺的实验室是由超导量子材料与系统中心负责设计和建造&#xff0c;旨在联合国内外的科学界、工业领域和初创企业&#xff0c;共同推动量子信息科…...

DCDC同步降压控制器SCT82A30\SCT82630

SCT82A30是一款100V电压模式控制同步降压控制器&#xff0c;具有线路前馈。40ns受控高压侧MOSFET的最小导通时间支持高转换比&#xff0c;实现从48V输入到低压轨的直接降压转换&#xff0c;降低了系统复杂性和解决方案成本。如果需要&#xff0c;在低至6V的输入电压下降期间&am…...

本地/笔记本/纯 cpu 部署、使用类 gpt 大模型

文章目录 1. 安装 web UI1.1. 下载代码库1.2. 创建 conda 环境1.3. 安装 pytorch1.4. 安装 pip 库 2. 下载大模型3. 使用 web UI3.1. 运行 UI 界面3.2. 加载模型3.3. 进行对话 使用 web UI 大模型文件&#xff0c;即可在笔记本上部署、使用类 gpt 大模型。 1. 安装 web UI 1…...

企企通亮相广东智能装备产业发展大会:以数字化采购促进智能装备产业集群高质量发展

制造业是立国之本&#xff0c;是国民经济的主要支柱、是推动工业技术创新的重要来源。 广东作为我国制造业大省&#xff0c;装备制造业规模增长快速&#xff0c;技术水平居于全国前列。为全面贯彻学习党的二十大精神&#xff0c;进一步推动机械装备可靠性设计&#xff0c;促进新…...

pycharm安装教程

PyCharm的安装步骤如下&#xff1a; 找到下载PyCharm的路径&#xff0c;双击.exe文件进行安装。点击Next后&#xff0c;选择安装路径页面&#xff08;尽量不要选择带中文和空格的目录&#xff09;&#xff0c;选择好路径后&#xff0c;点击Next进行下一步。进入Installation O…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook&#xff0c;用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途&#xff0c;下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点&#xff1a;传参类型必须是类对象 一、BigInteger 1. 作用&#xff1a;适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

go 里面的指针

指针 在 Go 中&#xff0c;指针&#xff08;pointer&#xff09;是一个变量的内存地址&#xff0c;就像 C 语言那样&#xff1a; a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10&#xff0c;通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...

MySQL的pymysql操作

本章是MySQL的最后一章&#xff0c;MySQL到此完结&#xff0c;下一站Hadoop&#xff01;&#xff01;&#xff01; 这章很简单&#xff0c;完整代码在最后&#xff0c;详细讲解之前python课程里面也有&#xff0c;感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构

React 实战项目&#xff1a;微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇&#xff01;在前 29 篇文章中&#xff0c;我们从 React 的基础概念逐步深入到高级技巧&#xff0c;涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...