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

HTTP查询参数示例(XMLHttpRequest查询参数)(带查询参数的HTTP接口示例——以python flask接口为例)flask查询接口

文章目录

  • HTTP查询参数请求示例
    • 接口文档——获取城市列表
    • 代码示例
    • 效果
  • 带查询参数的HTTP接口示例——以python flask接口为例
    • app.py
    • README.md
    • 运行应用
    • API示例
    • 客户端示例
      • 关键实现说明:
      • 运行方法:

HTTP查询参数请求示例

接口文档——获取城市列表

在这里插入图片描述

代码示例

<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><!-- 确保IE浏览器使用最新的渲染引擎 --><meta http-equiv="X-UA-Compatible" content="IE=edge"><!-- 设置viewport以确保页面在移动设备上正确显示 --><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>城市列表查询</title><style>body {font-family: Arial, sans-serif;padding: 20px;max-width: 600px;margin: 0 auto;}h2 {color: #333;}.city-p {line-height: 1.8;background-color: #f5f5f5;padding: 15px;border-radius: 5px;}</style>
</head><body><h2>城市列表查询</h2><p class="city-p"></p><script>// 目标:使用XHR携带查询参数,展示某个省下属的城市列表// 1. 创建XMLHttpRequest对象const xhr = new XMLHttpRequest()// 2. 配置请求方法和URL(携带查询参数pname=辽宁省)xhr.open('GET','http://hmajax.itheima.net/api/city?pname=辽宁省')// 3. 监听loadend事件,接收响应结果xhr.addEventListener('loadend',()=>{// 打印原始响应数据console.log(xhr.response)// 将响应数据从JSON字符串解析为JavaScript对象const data = JSON.parse(xhr.response)// 打印解析后的数据对象console.log(data)// 将城市列表数据渲染到页面,使用<br>标签分隔每个城市document.querySelector('.city-p').innerHTML = data.list.join('<br>')})// 4. 发起请求xhr.send()</script>
</body></html>

效果

在这里插入图片描述

带查询参数的HTTP接口示例——以python flask接口为例

在Flask中实现带查询参数的HTTP接口非常简单。以下是对应的Flask后端实现代码:

app.py

from flask import Flask, request, jsonify
from flask_cors import CORSapp = Flask(__name__)
# 启用CORS,允许跨域请求
CORS(app)# 省份及其城市数据
province_cities = {"辽宁省": ["沈阳", "大连", "鞍山", "抚顺", "本溪", "丹东", "锦州", "营口", "阜新", "辽阳", "盘锦", "铁岭", "朝阳", "葫芦岛"],"吉林省": ["长春", "吉林", "四平", "辽源", "通化", "白山", "松原", "白城", "延边"],"黑龙江省": ["哈尔滨", "齐齐哈尔", "牡丹江", "佳木斯", "大庆", "绥化", "鹤岗", "鸡西", "黑河", "双鸭山", "伊春", "七台河", "大兴安岭"],"河北省": ["石家庄", "唐山", "秦皇岛", "邯郸", "邢台", "保定", "张家口", "承德", "沧州", "廊坊", "衡水"],"山西省": ["太原", "大同", "阳泉", "长治", "晋城", "朔州", "晋中", "运城", "忻州", "临汾", "吕梁"]
}@app.route('/api/city', methods=['GET'])
def get_cities():"""获取指定省份的城市列表查询参数:pname: 省份名称,例如"辽宁省"返回:JSON对象,包含状态码、消息和城市列表"""# 从查询参数中获取省份名称province_name = request.args.get('pname')# 检查参数是否存在if not province_name:return jsonify({"code": 400,"message": "请提供省份名称","list": []}), 400# 检查省份是否存在if province_name not in province_cities:return jsonify({"code": 404,"message": f"未找到省份: {province_name}","list": []}), 404# 返回该省份的城市列表return jsonify({"code": 200,"message": "获取城市列表成功","list": province_cities[province_name]})@app.route('/api/province', methods=['GET'])
def get_provinces():"""获取所有省份列表返回:JSON对象,包含状态码、消息和省份列表"""return jsonify({"code": 200,"message": "获取省份列表成功", "list": list(province_cities.keys())})if __name__ == '__main__':app.run(debug=True, host='0.0.0.0', port=5000)
Flask==2.3.2
Flask-CORS==4.0.0

README.md

# 城市数据API服务
这是一个简单的Flask应用,提供省份和城市数据的API接口。## 功能
- `/api/province` - 获取所有省份列表
- `/api/city?pname=省份名称` - 获取指定省份的城市列表## 安装依赖
pip install -r requirements.txt

运行应用

python app.py

应用将在 http://localhost:5000 运行。

API示例

  1. 获取所有省份:

    GET http://localhost:5000/api/province
    
  2. 获取辽宁省的城市列表:

    GET http://localhost:5000/api/city?pname=辽宁省
    

客户端示例

在HTML文件中通过XMLHttpRequest调用API:

const xhr = new XMLHttpRequest();
xhr.open('GET', 'http://localhost:5000/api/city?pname=辽宁省');
xhr.addEventListener('loadend', () => {const data = JSON.parse(xhr.response);document.querySelector('.city-p').innerHTML = data.list.join('<br>');
});
xhr.send();

关键实现说明:

  1. 查询参数获取

    province_name = request.args.get('pname')
    

    这行代码从URL查询字符串中获取名为’pname’的参数。例如,当请求是/api/city?pname=辽宁省时,province_name的值将是"辽宁省"。

  2. 返回JSON数据

    return jsonify({"code": 200,"message": "获取城市列表成功","list": province_cities[province_name]
    })
    

运行方法:

  1. 安装依赖:

    pip install -r requirements.txt
    
  2. 运行应用:

    python app.py
    
  3. 应用将在http://localhost:5000启动,可以通过浏览器或XHR访问API。

  4. 修改前端代码中的URL,将其指向本地Flask服务器而非原来的URL:

    xhr.open('GET','http://localhost:5000/api/city?pname=辽宁省')
    

相关文章:

HTTP查询参数示例(XMLHttpRequest查询参数)(带查询参数的HTTP接口示例——以python flask接口为例)flask查询接口

文章目录 HTTP查询参数请求示例接口文档——获取城市列表代码示例效果 带查询参数的HTTP接口示例——以python flask接口为例app.pyREADME.md运行应用API示例客户端示例关键实现说明&#xff1a;运行方法&#xff1a; HTTP查询参数请求示例 接口文档——获取城市列表 代码示例…...

【玩泰山派】1、mac上使用串口连接泰山派

文章目录 前言picocom工具连接泰山派安装picocom工具安装ch340的驱动串口工具接线使用picocom连接泰山派 参考 前言 windows上面有xshell这个好用的工具可以使用串口连接板子&#xff0c;在mac上好像没找到太好的工具&#xff0c;只能使用命令行工具去搞了。 之前查找说mac上…...

【玩泰山派】0、mac utm安装windows10

文章目录 前言安装过程utm安装下载windows ios镜像安装windows系统解决共享文件夹拷贝受限问题 参考 前言 使用mac开发泰山派&#xff0c;但是买的泰山派没有emmc&#xff0c;只有sd卡&#xff0c;要使用瑞芯微的sd卡烧录工具&#xff0c;这个工具好像只支持windows&#xff0…...

html 给文本两端加虚线自适应

效果图&#xff1a; <div class"separator">文本 </div>.separator {width: 40%;border-style: dashed;display: flex;align-items: center;color: #e2e2e2;font-size: 14px;line-height: 20px;border-color: #e2e2e2;border-width: 0; }.separator::bef…...

Android学习总结之应用启动流程(从点击图标到界面显示)

一、用户交互触发&#xff1a;Launcher 到 AMS 的跨进程通信 1. Launcher 处理点击事件&#xff08;应用层&#xff09; 当用户点击手机桌面上的应用图标时&#xff0c;Launcher&#xff08;桌面应用&#xff09;首先捕获点击事件。每个图标对应一个启动 Intent&#xff08;通…...

Vue2与Vue3不同

Vue3 设计思想与核心变化详解 一、Vue3 设计思想与 Vue2 差异对比 响应式系统重构Vue2 实现&#xff08;基于 Object.defineProperty&#xff09; // 在 Vue2 中&#xff0c;通过 data 选项返回一个对象&#xff0c;对象中的属性会被 Object.defineProperty 转换为响应式数据…...

《Java实战:素数检测算法优化全解析——从暴力枚举到筛法进阶》

文章目录 摘要一、需求分析二、基础实现代码与问题原始代码&#xff08;暴力枚举法&#xff09;问题分析 三、优化版代码与解析优化1&#xff1a;平方根范围剪枝优化2&#xff1a;偶数快速跳过完整优化代码 四、性能对比五、高阶优化&#xff1a;埃拉托斯特尼筛法算法思想代码实…...

解决报错:node:internal/errors:496 ErrorCaptureStackTrace(err);

报错信息 我使用npm init vuelatest创建项目时出现如下报错 node:internal/errors:496 ErrorCaptureStackTrace(err); ^ TypeError [ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module “file:///D:/develop/nodejs/node_cache/_npx/2f7e7bff16d1c534/node_modules/create-vue/loc…...

【Linux笔记】进程管理章节笔记

一、进程与线程的概念 1、进程 1&#xff09;概念 进程是程序的执行实例&#xff0c;拥有独立的资源&#xff08;如内存、文件描述符等&#xff09;。每个进程在创建时会被分配唯一的进程ID&#xff0c;即为PID&#xff0c;也叫进程编号。 2&#xff09;特点 资源隔离&#…...

使用Webpack搭建React项目:从零开始

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 &#x1f35a; 蓝桥云课签约作者、…...

使用Cusor 生成 Figma UI 设计稿

一、开发环境 系统&#xff1a;MacOS 软件版本&#xff1a; Figma&#xff08;网页或APP版&#xff09; 注&#xff1a;最好是app版&#xff0c;网页版figma 没有选项 import from manifest app下载地址&#xff1a;Figma Downloads | Web Design App for Desktops & …...

前端 vs 后端:技术分工详解——从用户界面到系统逻辑的全解析

前端&#xff08;Frontend&#xff09; 和 后端&#xff08;Backend&#xff09; 是软件开发中两个核心概念&#xff0c;分别对应用户直接交互的部分和系统背后的逻辑处理部分。它们共同构成完整的应用程序&#xff0c;但分工不同。 目录 一、前端&#xff08;Frontend&#xf…...

CentOS 7上配置SQL Server链接其他SQL Server服务器

概述 本文介绍在CentOS 7系统上运行的SQL Server如何链接访问其他SQL Server服务器的详细步骤&#xff0c;包括驱动安装、配置和连接测试。 安装必要组件 1. 安装ODBC驱动 # 安装基础ODBC组件 sudo yum install unixODBC unixODBC-devel# 添加Microsoft仓库 curl https://p…...

Scade One - 将MBD技术从少数高安全领域向更广泛的安全嵌入式软件普及

Scade One是继Scade Suite version 6自2008年起发展近20年后的首次主要改进版本。在Scade One发布的同时&#xff0c;Scade团队发布了一系列介绍Scade One的博客。本篇Scade One - Democratizing model-based development是其中的一部分。在后面的内容中&#xff0c;将复述博客…...

第十二章:容器间网络_《凤凰架构:构建可靠的大型分布式系统》

第十二章 容器间网络 一、Linux网络虚拟化基础 1. 网络命名空间&#xff08;Network Namespace&#xff09; 隔离网络栈&#xff1a;每个网络命名空间拥有独立的IP地址、路由表、防火墙规则等网络配置。实现方式&#xff1a;通过ip netns命令管理&#xff0c;容器启动时自动创…...

详解七大排序

目录 一.直接插入排序 &#xff08;1&#xff09;基本思想 &#xff08;2&#xff09;算法步骤 &#xff08;3&#xff09;代码实现 &#xff08;4&#xff09;算法特性 &#xff08;5&#xff09;算法优化 &#xff08;6&#xff09;示例演示 二.希尔排序 &#xff08…...

第八章 Python基础进阶-数据可视化(终)

此章节练习主要分为&#xff1a;折线图、地图、柱状图&#xff0c;若用户只是学习Python的基础语法知识&#xff0c;可以不看此章节。 主要是讲解第三方包PyEcharts技术&#xff0c;Python数据的可视化操作。 一.json数据格式 json的概念&#xff1a; &#xff08;1&#x…...

【Hadoop3.1.4】完全分布式集群搭建

一、虚拟机的建立与连接 1.建立虚拟机 详情见【Linux】虚拟机的安装 把上面三个参数改掉 2.连接虚拟机 具体见【Linux】远程连接虚拟机防火墙 二、修改主机名 在Centos7中直接使用root用户执行hostnamectl命令修改&#xff0c;重启&#xff08;reboot&#xff09;后永久生…...

NLP简介及其发展历史

自然语言处理&#xff08;Natural Language Processing&#xff0c;简称NLP&#xff09;是人工智能和计算机科学领域中的一个重要分支&#xff0c;致力于实现人与计算机之间自然、高效的语言交流。本文将介绍NLP的基本概念以及其发展历史。 一、什么是自然语言处理&#xff1f…...

Java异步编程中的CompletableFuture介绍、常见错误及最佳实践

一、Future接口的局限性 Java 5引入的Future接口为异步编程提供了基础支持&#xff0c;但其设计存在明显局限性&#xff0c;导致复杂场景下难以满足需求&#xff1a; 阻塞获取结果 必须通过future.get()阻塞线程等待结果&#xff0c;无法实现真正的非阻塞&#xff1a; Executo…...

基于FLask的共享单车需求数据可视化分析系统

【FLask】基于FLask的共享单车需求数据可视化分析系统 &#xff08;完整系统源码开发笔记详细部署教程&#xff09;✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 该系统能够整合并处理大量共享单车使用数据&#xff0c;通过直观的可视化手段&#xff0…...

vue2项目中,多个固定的请求域名 和 通过url动态获取到的ip域名 封装 axios

vue2 使用场景&#xff1a;项目中&#xff0c;有固定的请求域名&#xff0c;而有某些接口是其他域名 /utils/request.js 固定请求域名 import axios from axios import Vue from vuelet baseURL switch (window.location.hostname) {case localhost: // 本地case 127.0.0.1…...

【嵌入式学习3】基于python的tcp客户端、服务器

目录 1、tcp客户端 2、tcp服务器 3、服务器多次连接客户端、多次接收信息 1、tcp客户端 """ tcp:客户端 1. 导入socket模块 2. 创建socket套接字 3. 建立tcp连接(和服务端建立连接) 4. 开始发送数据(到服务端) 5. 关闭套接字 """ import soc…...

tomcat构建源码环境

一. IDEA运行Tomcat8源码 参考网址&#xff1a;https://blog.csdn.net/yekong1225/article/details/81000446 ​ Tomcat作为J2EE的开源实现&#xff0c;其代码具有很高的参考价值&#xff0c;我们可以从中汲取很多的知识。作为Java后端程序员&#xff0c;相信有很多人很想了解…...

你用的是Bing吗?!

&#x1f525;【深度解析】微软Bing革命性升级&#xff01;Copilot Search上线&#xff1a;从此搜索≠找链接&#xff0c;而是直接生成答案&#xff01; &#x1f4a1; 你是否厌倦了这样的搜索体验&#xff1f; 搜索「Python处理JSON」&#xff0c;在10个网页间反复跳转想对比…...

拍摄的婚庆视频有些DAT的视频文件打不开怎么办

3-12 现在的婚庆公司大多提供结婚的拍摄服务&#xff0c;或者有一些第三方公司做这方面业务&#xff0c;对于视频拍摄来说&#xff0c;有时候会遇到这样一种问题&#xff0c;就是拍摄下来的视频文件&#xff0c;然后会有一两个视频文件是损坏的&#xff0c;播放不了&#xff0…...

Oracle Cloud (OCI) 服务器最新控制台启用 IPv6 超详细图文指南(2025最新实践)

本文为原作者发布到第三方平台,更多内容参考: 🚀 Oracle Cloud (OCI) 服务器最新控制台启用 IPv6 超详细图文指南(2025最新实践) 随着 IPv6 的普及,IPv6的优秀特性能为你的 OCI 云服务器提升网络性能和路由效率,并提升兼容性。本指南将引导你在 Oracle Cloud Infrast…...

YOLO环境搭建,win11+wsl2+ubuntu24+cuda12.6+idea

提示&#xff1a;环境搭建 文章目录 前言一、 win11 gpu 驱动更新1.1 下载驱动3. 验证&#xff0c; 二、配置子系统 ubuntu2.1 安装 cuda 三、配置 anaconda四、idea 配置使用 wsl ubuntu conda 环境 前言 提示&#xff1a;版本 win11 wsl2 ubuntu24 idea 2024 子系统跳过&…...

类 和 对象 的介绍

对象的本质是一种新的数据类型。类是一个模型&#xff0c;对象是类的一个具体化实例。为类创建实例也就是创建对象。 一、类&#xff08;class&#xff09; 类决定一个对象将是什么样的&#xff08;有什么属性、功能&#xff09;。类和变量一样&#xff0c;有名字。 1.创建类 …...

机器学习(1)—线性回归

文章目录 1. 算法定义2. 模型形式2.1. 简单线性回归&#xff08;单变量&#xff09;&#xff1a;2.2. 多元线性回归&#xff08;多变量&#xff09;&#xff1a; 3. 基本原理3.1. 误差函数&#xff1a;3.2. 求解回归系数 4. 假设条件5. 模型评估6. 优缺点7. 扩展方法8. 应用场景…...

macOS下SourceInsight的替代品

macOS 推荐的几款开源、轻量级、且功能类似于 SourceInsight 的源码阅读工具&#xff08;排除 VS Code&#xff09;&#xff1a; 1. Zeal&#xff08;离线文档 简单代码导航&#xff09; 官网/GitHub: https://zealdocs.org/特点&#xff1a; 轻量级离线文档浏览器&#xff0…...

form实现pdf文件转换成jpg文件

说明&#xff1a; 我希望将pdf文件转换成jpg文件 请去下载并安装 Ghostscript&#xff0c;gs10050w64.exe 配置环境变量&#xff1a;D:\Program Files\gs\gs10.05.0\bin 本地pdf路径&#xff1a;C:\Users\wangrusheng\Documents\name.pdf 输出文件目录&#xff1a;C:\Users\wan…...

聊天室项目之http知识

一.http的核心组成部分&#xff08;都分成请求的和响应的&#xff09; 1.起始行&#xff1a;请求------------------------ 方法&#xff08;Method&#xff09;&#xff1a;GET、POST、PUT、DELETE 等。 请求目标&#xff08;Request Target&#xff09;&#xff1a;URL 路径…...

kubeadm部署 Kubernetes(k8s) 高可用集群 V1.28.2

1. 安装要求 在开始之前&#xff0c;部署Kubernetes集群机器需要满足以下几个条件&#xff1a; 10台机器&#xff0c;操作系统Openeuler22.03 LTS SP4硬件配置&#xff1a;2GB或更多RAM&#xff0c;2个CPU或更多CPU&#xff0c;硬盘30GB或更多&#xff0c;docker 数据卷单独挂…...

BUUCTF-web刷题篇(12)

21.easy_tornado Tornado大致可以分为四个主要组成部分&#xff1a; 一个web框架&#xff08;包括RequestHandler创建Web应用程序的子类&#xff0c;以及各种支持类&#xff09;。 HTTPServerHTTP&#xff08;和AsyncHTTPClient&#xff09;的客户端和服务器端实现。 一个异…...

基于 Netty 框架的 Java TCP 服务器端实现,用于启动一个 TCP 服务器来处理客户端的连接和数据传输

代码&#xff1a; package com.example.tpson_tcp;import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelInitializer; import io.netty.channel.ChannelOption; import io.netty.channel.EventLoopGroup; imp…...

【Kafka基础】Kafka配置文件关键参数解析与单机生产环境配置指南

1 Kafka配置文件概述 Apache Kafka的配置文件是控制其行为的关键所在&#xff0c;合理的配置能够显著提升性能、可靠性和可维护性。Kafka主要涉及两个核心配置文件&#xff1a; server.properties&#xff1a;Broker主配置文件zookeeper.properties&#xff1a;ZooKeeper配置文…...

Kafka 漏消费和重复消费问题

Kafka 虽然是一个高可靠、高吞吐的消息系统&#xff0c;但如果使用不当&#xff0c;**“漏消费”和“重复消费”**问题是非常容易发生的&#xff0c;尤其在业务系统中会造成数据丢失、重复写库等严重问题。 &#x1f3af; 一句话理解&#xff1a; Kafka 本身提供 “至多一次”…...

Mysql慢查询设置 和 建立索引

1 .mysql慢查询的设置 slow_query_log ON //或 slow_query_log_file /usr/local/mysql/data/slow.log long_query_time 2 修改后重启动mysql 1.1 查看设置后的参数 mysql> show variables like slow_query%; --------------------------------------------------…...

Windows程序中计时器WM_TIMER消息的使用

本文章是对《Windows程序设计》这本书第八章计时器的总结&#xff0c;如果有时间&#xff0c;可以去看书里的讲解&#xff0c;如果时间不充裕&#xff0c;想马上知道计时器该如何使用&#xff0c;欢迎阅读本文&#xff0c;本文已经将计时器的干货整理完毕&#xff01; 什么是计…...

关于apple ios苹果mdm监管锁的漏洞与修复

前言 本人从2020年开始接触苹果mdm管理系统的开发 起初只是接触如何利用mdm进行app分发 23年开始开发mdm监管锁业务 随着手机租赁的市场兴起 mdm监管锁系统随即而生 注意 本人只是分享工作过程中遇到的一些问题 不接受苹果手机屏蔽以及解锁的业务 此文章仅做分享使用 MDM监…...

使用Geotools中的原始方法来操作PostGIS空间数据库

目录 前言 一、原生PostGIS连接介绍 1、连接参数说明 2、创建DataStore 二、工程实战 1、Maven Pom.xml定义 2、空间数据库表 3、读取空间表的数据 三、总结 前言 在当今数字化与信息化飞速发展的时代&#xff0c;空间数据的处理与分析已成为众多领域不可或缺的一环。从…...

C-S模式之实现一对一聊天

天天开心&#xff01;&#xff01;&#xff01; 文章目录 一、如何实现一对一聊天&#xff1f;1. 服务器设计2. 客户端设计3. 服务端代码实现4. 客户端代码实现5. 实现说明6.实验结果 二、改进常见的服务器高并发方案1. 多线程/多进程模型2. I/O多路复用3. 异步I/O&#xff08;…...

Kafka Consumer Group

Kafka 消费者组&#xff08;Consumer Group&#xff09; 是 Kafka 的核心机制之一&#xff01;理解它对你掌握 Kafka 的高可用、高吞吐、负载均衡等能力非常关键。下面我来给你完整讲一讲&#x1f447; &#x1f9e0; 什么是 Kafka 消费者组&#xff08;Consumer Group&#x…...

LangChain vs LlamaIndex:大模型应用开发框架深度对比与实战指南

一、引言:大模型时代的应用开发挑战 随着ChatGPT、LLaMA等大语言模型的爆发式发展,如何高效构建「大模型+垂直领域」的智能应用成为新课题。传统开发模式面临三大痛点: 数据交互复杂:大模型与本地数据的融合缺乏标准化接口功能扩展困难:链式调用、工具集成需要重复造轮子…...

第二章:访问远程服务_《凤凰架构:构建可靠的大型分布式系统》

第二章 访问远程服务 2.1 远程服务调用&#xff08;RPC&#xff09; 2.1.1 进程间通信机制 核心方式&#xff1a; 管道&#xff08;Pipe&#xff09;&#xff1a;单向通信&#xff0c;用于父子进程信号&#xff08;Signal&#xff09;&#xff1a;异步事件通知&#xff0c;不…...

一键自动备份:数据安全的双重保障

随着数字化时代的到来&#xff0c;数据已成为企业和个人不可或缺的核心资产。在享受数据带来的便捷与高效的同时&#xff0c;数据丢失的风险也随之增加。因此&#xff0c;备份文件的重要性不言而喻。本文将深入探讨备份文件的重要性&#xff0c;并介绍两种实用的自动备份方法&a…...

C++11之std::is_convertible

目录 1.简介 2.实现原理 3.使用场景 4.总结 1.简介 std::is_convertible 是 C 标准库 <type_traits> 头文件中的一个类型特性&#xff08;type trait&#xff09;&#xff0c;它用于在编译时检查一个类型是否可以隐式转换为另一个类型。下面的原型&#xff1a; temp…...

从零开始:在Qt中使用OpenGL绘制指南

从零开始&#xff1a;在Qt中使用OpenGL绘制指南 本文只介绍基本的 QOpenGLWidget 和 QOpenGLFunctions 的使用&#xff0c;想要学习 OpenGL 的朋友&#xff0c;建议访问经典 OpenGL 学习网站&#xff1a;LearnOpenGL CN 本篇文章&#xff0c;我们将以绘制一个经典的三角形为例&…...

我的购物车设计思考:从个人项目到生产实战思考的蜕变

一、代码初体验&#xff1a;我踩过的那些坑 还记得大二做课程设计时&#xff0c;我写的购物车直接用ArrayList存商品&#xff0c;结果改数量时遍历半天找商品。现在看你这个HashMap实现&#xff0c;确实清爽很多&#xff0c;但有几点让我想起当年惨痛经历&#xff1a; 1. 线程…...