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

el-tree结合el-tree-transfer实现穿梭框里展示树形数据

参考文章:我把他的弹框单拉出来一个独立文件作为组件方便使用,遇到一些问题记录一下。
在这里插入图片描述

testComponet.vue

<template><div class="per_container"><div class="per_con_left"><div class="per_con_title">未选</div><div class="check_all"><el-checkbox:indeterminate="config.left.isIndeterminate"v-model="config.left.checkAll"@change="handleCheckAll($event, 'left')">全选/全不选</el-checkbox></div><div class="tree"><el-treeref="treeLeft":data="treeDataArr":props="propsDefault"node-key="id"show-checkbox:filter-node-method="filterNodeLeft"@check-change="handleCheckChange('left')"/></div></div><div class="operation"><el-button type="primary" @click="toRight()">移入<i class="el-icon-d-arrow-right"></i></el-button><el-button type="primary" icon="el-icon-d-arrow-left" @click="toLeft()">移除</el-button></div><div class="per_con_right"><div class="per_con_title">已选</div><div class="check_all"><el-checkbox:indeterminate="config.right.isIndeterminate"v-model="config.right.checkAll"@change="handleCheckAll($event, 'right')">全选/全不选</el-checkbox></div><div class="tree"><el-treeref="treeRight":data="treeDataArr":props="propsDefault"node-key="id"show-checkbox:filter-node-method="filterNodeRight"@check-change="handleCheckChange('right')"/></div></div></div>
</template>
<script>
export default {props: ['treeData'],mounted() {this.treeDataArr = this.treeData;this.allParentKeys = this.treeDataArr.map((item) => {return item.id;});if (this.$refs.treeLeft && this.$refs.treeRight) {this.$nextTick(() => {this.setTreeFilter();});}},created() {// this.treeDataArr = this.treeData;// this.allParentKeys = this.treeDataArr.map((item) => {//     return item.id;// });// if (this.$refs.treeLeft && this.$refs.treeRight) {//     this.$nextTick(() => {//         this.setTreeFilter();//     });// }},  data() {return {propsDefault: {label: "name"},isIndeterminateL: false,isIndeterminateR: false,checkAllLeft: false,checkAllRight: false,treeDataArr: [],checkedKeys: [],halfCheckedKeys: [],checkedNodes: [],config: {left: {isIndeterminate: false,checkAll: false,ref: "treeLeft"},right: {isIndeterminate: false,checkAll: false,ref: "treeRight"}}};},methods: {setTreeFilter() {this.$refs.treeLeft.filter();this.$refs.treeRight.filter();},toLeft() {this.checkedKeys = this.$refs.treeRight.getCheckedKeys();this.halfCheckedKeys = this.$refs.treeRight.getHalfCheckedKeys();this.settreeDataArr(this.treeDataArr, false);this.setTreeFilter();this.$refs.treeLeft.setCheckedKeys(this.checkedKeys);this.$refs.treeRight.setCheckedKeys([]);},toRight() {this.checkedKeys = this.$refs.treeLeft.getCheckedKeys();this.halfCheckedKeys = this.$refs.treeLeft.getHalfCheckedKeys();this.settreeDataArr(this.treeDataArr, true);this.setTreeFilter();this.$refs.treeRight.setCheckedKeys(this.checkedKeys);this.$refs.treeLeft.setCheckedKeys([]);},filterNodeLeft(value, data) {console.log('filterNodeLeft',data);return !data.selected;},filterNodeRight(value, data) {console.log('filterNodeRight',data);return data.selected;},// 递归设置数据选中状态settreeDataArr(tree, type) {const setTree = (treeDataArr) => {treeDataArr.forEach((item, index) => {if (this.checkedKeys.includes(item.id)) {treeDataArr[index].selected = type;}if (item.children && item.children.length) {setTree(item.children);// 判断半选框是否需要移动if (this.halfCheckedKeys.includes(item.id)) {if (type) {treeDataArr[index].selected = type;} else {const target = treeDataArr[index].children.find((it) => {return it.selected;});if (!target) {treeDataArr[index].selected = type;}}}}});};setTree(tree);},submitEdit() {this.$emit("permissionData", this.treeDataArr);},// 勾选树结构时判断是否勾选上面的全选handleCheckChange(type) {this.checkedNodes = this.$refs[this.config[type].ref].getCheckedNodes();const pIds = this.checkedNodes.filter((item) => {return !item.pId;});if (!pIds.length) {this.config[type].checkAll = false;this.config[type].isIndeterminate = false;return;}if (pIds.length === this.allParentKeys.length) {this.config[type].checkAll = true;this.config[type].isIndeterminate = false;} else {this.config[type].isIndeterminate = true;this.config[type].checkAll = false;}},// 全选handleCheckAll(value, type) {const keys = value? this.treeDataArr.map((item) => {return item.id;}): [];this.$refs[this.config[type].ref].setCheckedKeys(keys, false);}}
};
</script>
<style lang="scss" scoped>
.per_container {display: flex;height: 500px;justify-content: space-between;align-items: center;
}
.per_con_left,
.per_con_right {width: 45%;height: 100%;
}
.operation {display: flex;flex-direction: column;align-items: center;justify-content: center;padding: 20px;
}
.operation .el-button {margin-left: 0;margin-bottom: 10px;
}
.per_con_title {height: 42px;line-height: 26px;border-radius: 8px 8px 0 0;padding: 8px;align-self: stretch;background: #f2f6f9;font-size: 16px;box-sizing: border-box;border: 1px solid #d8d8d8;font-weight: 700;text-align: left;
}
.check_all {height: 42px;line-height: 42px;padding: 0 5px;border: 1px solid #d8d8d8;border-top: none;text-align: left;
}
.tree {height: calc(100% - 82px);border: 1px solid #d8d8d8;border-top: none;overflow: auto;
}
</style>

思路
(1)思路二:利用elementUI的filter API对选中节点进行筛选,左侧筛选出未选中的,右侧筛选出选中的,用的还是同一棵树,用一个属性来区分是否选择,好处是子节点选中,父节点会跟随保存,不用重新构建树结构。
(2)通过监听treeData值变化,调用setTreeFilter也就是this.$refs.treeLeft.filter(); this.$refs.treeRight.filter();
里的filter 方法,filter 是 el-tree 组件用于动态过滤树节点,配合 filter-node-method 属性可以实现节点过滤,自定义左右侧树过滤的规则分别是是filterNodeLeft(value, data) { return !data.selected;},filterNodeRight(value, data) {return data.selected;},是否被选中(左移右移来设置selected属性)

testIndex.vue

<template><div><!-- 其他页面内容 --><TestComponent :treeData="myTreeData" /></div>
</template><script>
import TestComponent from '@/views/test/test.vue';export default {components: {TestComponent},data() {return {myTreeData: [// 这里放置你的树形数据{id: 1,name: '父节点1',children: [{id: 2,name: '子节点1'}]}]};},// ... existing code ...
};
</script>

关于监听treeData变化后给树赋数据这里遇到问题:我把原文监听treeData对树进行初始化一开始写在created里,导致左右都有树,然后改为mounted就没有这个问题。
原因:(操作DOM元素用mounted
依赖 DOM 元素 : setTreeFilter 方法可能依赖于 this.$refs.treeLeftthis.$refs.treeRight 这两个 DOM 引用。在 created 阶段,DOM 元素还未挂载, this.$refs 无法正确获取到对应的 DOM 元素,从而导致过滤逻辑无法正常执行。而在 mounted 阶段,DOM 元素已经挂载完成, this.$refs 可以正常获取到对应的 DOM 元素,过滤逻辑就能正常工作了。

treeData: {handler(val) {this.treeDataArr = val;this.allParentKeys = this.treeDataArr.map((item) => {return item.id;});if (this.$refs.treeLeft && this.$refs.treeRight) {this.$nextTick(() => {this.setTreeFilter();});}},deep: true,},
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/Error_ABC/article/details/136877442

在这里插入图片描述

 created() {// this.treeDataArr = this.treeData;// this.allParentKeys = this.treeDataArr.map((item) => {//     return item.id;// });// if (this.$refs.treeLeft && this.$refs.treeRight) {//     this.$nextTick(() => {//         this.setTreeFilter();//     });// }},  

相关文章:

el-tree结合el-tree-transfer实现穿梭框里展示树形数据

参考文章&#xff1a;我把他的弹框单拉出来一个独立文件作为组件方便使用&#xff0c;遇到一些问题记录一下。 testComponet.vue <template><div class"per_container"><div class"per_con_left"><div class"per_con_title&q…...

浅谈GC机制-三色标记和混合写屏障

标记清除法 stw&#xff08;stop the world&#xff09;&#xff1a;暂停所有goroutine&#xff0c;扫描出可达与不可达对象&#xff0c;进行回收 三色标记法 不暂停&#xff0c;并发扫描&#xff0c;从根节点出发&#xff0c;扫描过对象的为黑&#xff0c;下一个可达对象为…...

Python训练营打卡 Day30

模块和库的导入 知识点回顾&#xff1a; 导入官方库的三种手段 直接导入整个库&#xff1a;使用 import library_name 语法。 导入库中的特定模块或函数&#xff1a;使用 from library_name import module_name 或 from library_name import function_name。 导入库并起别名&…...

深入探讨死区生成:原理、实现与应用

在电力电子、信号处理等众多领域中&#xff0c;“死区生成”是一个十分关键的概念&#xff0c;它能有效避免器件误动作、减少干扰&#xff0c;保障系统稳定运行。今天就通过问答的形式&#xff0c;和大家深入聊聊死区生成相关知识。 什么是死区生成&#xff1f; 死区生成是指…...

OpenCV 环境搭建与概述

// //OpenCV-4.11.0 C VS2019 // 一、OpenCV学习路线 1、入门: OpenCV图像读写、视频读写、基本像素处理、基本卷积处理、基本C开发知识。 2、初级: OpenCV自定义卷积操作、图像梯度、边缘提取、二值分析、视频分析、形态学处理、几何变换与透视变换。 3、中级: 角点查找、BL…...

c/c++的opencv均值函数

C/C 中的均值函数&#xff1a;从基础到应用 &#x1f4ca; 在 C/C 编程中&#xff0c;计算一组数值的**均值&#xff08;平均值&#xff09;**是一项非常基础且常见的操作。无论是数据分析、信号处理、图像处理还是机器学习&#xff0c;均值函数都扮演着重要的角色。本文将详细…...

go 数据类型转换

graph TDA[整型<br>int, int8, int16, int32, int64] -->|类型转换| B[浮点型<br>float32, float64]B -->|类型转换| AA -->|类型转换| C[布尔型<br>bool]C -->|类型转换| AB -->|类型转换| D[复数型<br>complex64, complex128]D -->…...

Go内存管理

内存管理 文章目录 内存管理何为内存&#xff1f;内存为什么需要管理&#xff1f;内存管理的方式操作系统存储模型操作系统是怎么管理内存的&#xff1f;虚拟内存与物理内存认识虚拟内存分页管理 Golang 内存模型TCMalloc核心概念go内存管理核心概念GO内存分配GO 内存逃逸机制一…...

解决软件连接RabbitMQ突发System.IO.IOException: 无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接异常

一、问题描述 系统再运行时&#xff0c;突然出现 System.Exception: [RabbitMQ.Send Error] RabbitMQ.Client.Exceptions.AlreadyClosedException: Already closed: The AMQP operation was interrupted: AMQP close-reason, initiated by Library, code541, text“Unexpected…...

基于局部显著位置感知的异常掩码合成方法在CT图像肺部疾病异常检测与病变定位中的应用|文献速递-深度学习医疗AI最新文献

Title 题目 Local salient location-aware anomaly mask synthesis for pulmonary disease anomaly detection and lesion localization in CT images 基于局部显著位置感知的异常掩码合成方法在CT图像肺部疾病异常检测与病变定位中的应用 01 文献速递介绍 肺部疾病是全球发…...

【cursor疑惑】cursor续杯后使用agent对话时,提示“需要pro或商业订阅的用户才能使用“

背景 cursor的pro会员体验过期了&#xff0c;想再次体验deepseek、Claude等agent对话提示:“免费版本不可以使用agent对话功能(英文忘记截图了&#xff0c;大意是这样)”。 处理方法 Step-1&#xff1a;再次续杯cursor的pro会员14天体验 详情&#xff0c;见&#xff1a;【c…...

2022年下半年信息系统项目管理师——综合知识真题及答案(3)

2022年下半年信息系统项目管理师 ——综合知识真题及答案&#xff08;3&#xff09; 零、时光宝盒 &#xff08;https://blog.csdn.net/weixin_69553582 逆境清醒&#xff09; 此文是我2025-05-19回复头条上某作者文章时的评论记录&#xff0c;原作者的文章是写那些被有组织…...

华为云Flexus+DeepSeek征文|基于华为云Flexus云服务的云服务器单机部署Dify-LLM应用开发平台

目录 一、前言 二、华为云Flexus云服务优势 三、华为云Flexus一键部署Dify 3.1 选择模板 3.2 参数配置 3.3 资源栈设置 3.4 配置确认 3.5 创建执行计划 3.6 部署 四、Dify-LLM应用开发平台初体验 4.1 访问Dify-LLM应用开发平台 4.2 设置管理员账户 4.3 登录Dify-LLM应用开发平台…...

NC105NC106美光固态颗粒NC108NC109

NC105NC106美光固态颗粒NC108NC109 美光固态颗粒技术矩阵深度解析&#xff1a;NC105/NC106/NC108/NC109的性能博弈与市场卡位 一、技术基因图谱&#xff1a;解密NC系列颗粒的底层架构 1. TLC与QLC的技术路线分野 美光NC系列颗粒呈现出清晰的技术分层&#xff1a;NC105/NC10…...

洛谷U536262 井底之“鸡” 附视频讲解

题目截图 题目背景 2024年山东财经大学新生赛的时候&#xff0c;xz_chicken厌倦了在鸡舍的生活&#xff0c;于是决定把他的主人ZQH写成QH鸡&#xff0c;然而除了在第一题中已经出现了ZQH所在队伍征途再起的合影&#xff0c;同时xz_chicken还露出其他马脚&#xff0c;比如说答案…...

特征筛选方法总结(面试准备15)

非模型方法 一.FILTER过滤法&#xff1a; 1.缺失值比例&#xff08;80%以上缺失则删除&#xff09;/方差 注意&#xff1a; 连续变量只删方差为0的&#xff0c;因为变量取值范围会影响方差大小。 离散类的看各类取值占比,如果是三分类变量可以视作连续变量。 函数&#xff1a;V…...

深入解析分布式数据库TiDB:原理、优化与架构实践

前言 在云计算与大数据时代&#xff0c;传统单机数据库面临三大挑战&#xff1a;海量数据存储、高并发访问和实时分析需求。MySQL 分库分表方案复杂、NoSQL 缺乏 ACID 支持、MPP 数仓难以处理 OLTP… 在这样的背景下&#xff0c;TiDB 应运而生。作为一款开源的分布式 NewSQL 数…...

YouTube视频字幕转成文章算重复内容吗?

很多创作者误以为「自己说的话不算抄袭」&#xff0c;却不知道YouTube自动生成的字幕早已被搜索引擎存档。 去年就有案例&#xff1a;某美食博主将教程视频字幕转为图文&#xff0c;结果原创度检测仅42%&#xff0c;导致页面权重暴跌。 本文揭秘5个实操技巧&#xff1a;从删除…...

codeup添加流水线docker自动化部署

在项目根目录下增加Dockerfile文件 # 使用基础镜像 FROM maven:3.8.4-openjdk-17-slim AS build # 设置工作目录 WORKDIR /app # 复制项目源代码 COPY . . # 构建项目 RUN mvn clean package -DskipTests # 验证JAR包是否生成 RUN ls -l target/your-project.jar # 使用合适的…...

面试点补充

目录 1. 搭建lnmp Linux 系统基础命令 nginx相关命令 MySQL 相关命令 PHP 相关命令 验证命令 下载并部署 Discuz! X3.4 论坛 到 Nginx 网站 2. 脑裂 2.1 脑裂的定义 2.2 脑裂产生的原因 1. 主备节点之间的心跳线中断 2. 优先级冲突 3. 系统或服务负载过高 2.3 如何…...

深入解析 Oracle session_cached_cursors 参数及性能对比实验

在 Oracle 数据库管理中&#xff0c;session_cached_cursors参数扮演着至关重要的角色&#xff0c;它直接影响着数据库的性能和资源利用效率。本文将深入剖析该参数的原理、作用&#xff0c;并通过性能对比实验&#xff0c;直观展示不同参数设置下数据库的性能表现。 一、sessi…...

MyBatis:动态SQL

文章目录 动态SQLif标签trim标签where标签set标签foreach标签include标签和sql标签 Mybatis动态SQL的官方文档&#xff1a; https://mybatis.net.cn/dynamic-sql.html 动态SQL 动态SQL是 MyBatis的强大特性之一,如果是使用JDBC根据不同条件拼接sql很麻烦&#xff0c;例如拼接…...

数据库性能调优:索引设计、缓存配置与查询计划优化

在高并发、大数据量场景下,数据库性能直接影响系统稳定性与用户体验。 本文将从索引设计、缓存配置、查询计划优化三大核心维度出发,结合实战案例与代码示例,系统解析数据库性能调优的关键策略,并深入讲解 EXPLAIN ANALYZE 与 索引覆盖策略 的应用技巧。 一、索引设计:从…...

安全强化的Linux

SElinux简介 SELinux是security-Enhanced Linux的缩写,意思是安全强化的linux SELinux主要由美国国家安全局(NSA)开发,当初开发的目的是为了避免资源的误用。传统的访问控制在我们开启权限后,系统进程可以直接访问 当我们对权限设置不严谨时,这种访问方式就是系统的安全漏洞 在…...

计算机网络(2)——应用层(上)

1.应用层概述 应用层(Application Layer)属于计算机网络体系结构中的最顶层&#xff0c;直接面向用户&#xff0c;提供各种网络服务和应用程序的接口 本文主要的学习内容如下&#xff1a; (1)网络应用进程通信方式 客户端-服务器方式点对点方式混合方式 (2)网络应用的需求与传输…...

day017-磁盘管理-实战

文章目录 1. 硬盘命名规则2. 添加硬盘2.1 查看硬盘名称 3. 硬盘分区3.1 分区命名规则&#xff1a;mbr分区表格式3.2 创建分区&#xff1a;fdisk3.2.1 fdisk -l&#xff1a;查看硬盘及分区信息3.2.2 fdisk /dev/sdc :为该硬盘分区3.2.3 创建扩展分区和逻辑分区3.2.4 保存设置并退…...

Win10 安装单机版ES(elasticsearch),整合IK分词器和安装Kibana

一. 先查看本机windows是否安装了ES(elasticsearch)&#xff0c;检查方法如下&#xff1a; 检查进程 按 Ctrl Shift Esc 组合键打开 “任务管理器”。在 “进程” 选项卡中&#xff0c;查看是否有 elasticsearch 相关进程。如果有&#xff0c;说明系统安装了 ES。 检查端口…...

STM32 控制 OLED 全攻略(二):实现字符和汉字的显示

目录 一 前言 二 OLED介绍 &#xff08;一&#xff09;SSD1306 &#xff08;二&#xff09;OLED屏幕 三 显示原理结合代码解释 1 指令---0x00 2 数据---0x40 3 初始化oled函数 4 codetab.h 四 显示字符串的原理 &#x1f9fe; ASCII 编码范围&#xff1a; ✅ OLED_S…...

c#将json字符串转换为对象数组

在C#中&#xff0c;将JSON字符串转换为对象数组是一个常见的需求&#xff0c;特别是在处理来自Web API的响应或需要反序列化本地文件内容时。这可以通过使用Newtonsoft.Json&#xff08;也称为Json.NET&#xff09;库或.NET Core内置的System.Text.Json来完成。以下是如何使用这…...

Cryosparc里头restack的妙用

在Cryosparc里头经常需要迁移job或者将particle打包成relion可以识别的模式&#xff0c;总是会遇到一个问题&#xff0c;我们需要的颗粒明明很少&#xff0c;但总是保存出一大堆东西来。原因就是&#xff0c;他会把最开初的particle都给你算进来&#xff0c;而不是某个作业对应…...

.bat文档如何运行Python程序

.bat文档如何运行Python程序 在Windows操作系统中&#xff0c;你可以通过几种方式来运行Python程序&#xff0c;即使是通过.bat批处理文件。.bat文件是一种批处理脚本&#xff0c;它允许你执行一系列命令。以下是一些步骤和示例&#xff0c;说明如何从.bat文件运行Python程序。…...

力扣HOT100之二叉树:230. 二叉搜索树中第 K 小的元素

这道题直接用最笨的办法来做的&#xff0c;用递归来做&#xff0c;我们定义一个全局变量vector<int> element&#xff0c;然后使用中序遍历&#xff0c;每当碰到一个非空节点就将其加入到向量中&#xff0c;这样依赖当向量中的元素小于k时&#xff0c;就返回0&#xff0c…...

【Nextcloud】使用 LNMP 架构搭建私有云存储:Nextcloud 实战指南

目录 一、环境准备与基础配置 1. 系统环境要求 2. 初始化系统配置 二、搭建 LNMP 基础架构 1. 一键安装 LNMP 组件 2. 启动数据库服务 三、部署 Nextcloud 存储服务 1. 上传并解压安装包 2. 设置目录权限&#xff08;测试环境配置&#xff09; 3. 配置 MariaDB 数据库…...

已知6、7、8月月平均气温和标准差,求夏季季平均温度与标准差

由下面定理&#xff0c;得出平方和的公式&#xff1a;&#xff08;即每天的温度平方和&#xff09; 这样就可以推出季平均的算法&#xff1a; 举例&#xff1a;在Excel用公式算&#xff0c;不要手算&#xff1a; 因此季平均&#xff1a;(B2*C2B3*C3B4*C4)/SUM(B2:B4) 季标准差…...

【cursor指南】cursor免费续杯pro会员试用

背景 心血来潮(其实是被逼的)&#xff0c;开始需要cursor里面的agent对话。cursor用着用着就会出现点数耗尽、试用到期等问题&#xff0c;于是自行开始找免费的cursor会员续用方法。 Part01&#xff1a;参考链接鸣谢 1. Cursor 全攻略&#xff1a;注册、使用到无限续杯&…...

Visual Studio解决方案构建三剑客:生成/重新生成/清理完全指南(实战经验总结)

文章目录 当你在VS里右键解决方案时...一、先看实战场景&#xff08;老板发飙警告&#xff09;二、三大命令解剖课&#xff08;重点标记版&#xff09;2.1 生成解决方案&#xff08;F7&#xff09;2.2 重新生成解决方案&#xff08;CtrlAltF7&#xff09;2.3 清理解决方案&…...

《JVM如何判断一个对象可以被回收?图文详解GC Root算法》

大家好呀&#xff01;我是你们的老朋友Java技术博主&#x1f44b; 今天咱们来聊聊Java虚拟机(JVM)中一个超级重要的话题——垃圾回收机制(Garbage Collection)和GC Root可达性分析&#xff01;这可是Java程序员必须掌握的核心知识点哦&#xff01;&#x1f60e; &#x1f31f;…...

常用算法/机理模型演示平台搭建(一)

算法/机理模型演示平台搭建 一、算法列表(app/algorithms)二、行业机理模型 (app/models)三、如何使用本项目旨在为初学者提供 35种 常用算法和 9种 行业机理模型的简单Python实现或概念说明。每个算法都有其独特的应用场景,从数据预测、质量检测、过程控制到结构分析和优化问…...

一文详解红黑树

一文详解红黑树 前言一、基本概念与特性1.1 红黑树的定义1.2 红黑树的特性 二、红黑树的节点结构与表示三、红黑树的基本操作3.1 插入操作3.2 删除操作 四、红黑树的应用场景4.1 编程语言的集合类4.2 数据库索引4.3 Linux 内核进程调度 总结 前言 在数据结构的领域中&#xff…...

Windows 安装显卡驱动

1.第一步&#xff1a;打开Nvidia 官网驱动下载页面 2.第二步&#xff1a;选择相关信息&#xff0c; 玩游戏选择&#xff0c;GeForce Game Ready ,创意设计、摄影直播 选择 NVIDIA Studio 驱动程序 &#xff08;NVIDIA Studio Driver - WHQL.&#xff09; 2.第三步&#xff1…...

【C语言】易错题 经典题型

出错原因&#xff1a;之前运行起来的可执行程序没有关闭 关闭即可 平均数&#xff08;average&#xff09; 输入3个整数&#xff0c;输出它们的平均值&#xff0c;保留3位小数。 #include <stdio.h> int main() {int a, b, c;scanf("%d %d %d", &a, &…...

C++类与对象--5 运算符重载

对已有的运算符进行重新定义&#xff0c;赋予不同的功能&#xff0c;以适应不同的数据类型 5.1 加号运算符 实现两个自定义数据类型的加运算 (1)通过成员函数实现“”重载 class Number { public:Number(int a, int b):m_A(a),m_B(b){}Number(){}Number operator(Number &a…...

接口排查不能靠猜:实战中如何用抓包工具精准定位问题(含 Charles 使用示例)

几乎每个写代码的开发者都经历过这样的时刻&#xff1a;接口突然返回空、请求超时、前端数据没更新……你试过重启服务、翻查日志、改代码打印&#xff0c;最后还是无解。 我想说&#xff0c;其实很多问题的答案都藏在“网络请求”里&#xff0c;只是你没有去看。 这篇文章&a…...

【占融数科-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…...

4.7 时间模块

时间模块&#xff1a; * 1. time&#xff1a;操作时间本身 2.datetime&#xff1a;主要用于设置某一时间 3.calendar&#xff1a;主要用于时间份量计算 import time # 1. actimr:把一个表示时间的元组转换为字符串。要是不给出参数则返回当前本地时间。 print(time.asctime())…...

SHIMADZU岛津 R300RC300 Operation Manual

SHIMADZU岛津 R300RC300 Operation Manual...

(C语言篇)处理字符串的四个基础函数

strlen、strcpy、strcat、strcmp使用以及注意事项 在C语言中&#xff0c;strlen、strcpy、strcat、strcmp是处理字符串的四个基础函数&#xff0c;都在<string.h>头文件中声明。下面为你详细介绍它们的功能、用法和注意事项。 1. strlen - 计算字符串长度 函数原型&am…...

mysql的安装方式

1.yum/apt安装 yum安装&#xff1a; 先搭建yum仓库&#xff0c;可以在清华源内找&#xff1a;mysql | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror vim /etc/yum.repos.d/mysql.repo[mysql-connectors-community] nameMySQL Connectors Communit…...

嵌入式(C语言篇)Day11

嵌入式Day11 一、动态内存分配核心函数 &#xff08;一&#xff09;函数列表 函数名功能头文件返回值malloc分配连续的size字节堆内存stdlib.h成功返回首地址&#xff08;void*&#xff09;&#xff0c;失败返回NULLcalloc分配num个元素size字节/元素的堆内存&#xff0c;自…...

Java集合框架解析:从基础到底层源码

Java集合框架解析&#xff1a;从基础到底层源码 一、集合体系 1.1 两大核心接口深度解析 Collection 单列集合 List 系列 ArrayList&#xff1a;动态数组实现&#xff0c;初始容量10&#xff0c;扩容策略为 原容量的1.5倍// JDK17 扩容源码片段 int newCapacity oldCapacity…...