自由学习记录(38)
python语法

def
def print_receipt
(store_name, items, total_price, cashier="Self-Checkout", payment_method="Credit Card"):
Python 的 函数定义 语法
def print_receipt(...)→ 定义了一个名为print_receipt的函数。store_name, items, total_price→ 这些是必填参数,调用print_receipt()时必须提供。





^40 是 格式化对齐 语法,它的意思是:
^→ 居中对齐40→ 总宽度 40 个字符- 如果
store_name只有 10 个字符,前后会各填充(40-10)/2=15个空格,使它居中。




{item:<20}→item左对齐,占 20 个字符(让商品名整齐){qty:<5}→qty左对齐,占 5 个字符{price:.2f}→price保留两位小数


sum(i**n for i in range(1, n+1)) 计算从 1^n 到 n^n 之和:
range(1, n+1)生成1到n之间的整数。i**n计算i的n次方。sum()对所有次幂结果求和。
:2 表示这个值至少占 2 个字符的宽度,如果数字位数不足,会自动用空格填充左侧。
{}表示占位符,可以放入变量或表达式。:冒号后面是格式说明,用来控制对齐方式、宽度、小数位数等

Python turtle 真的很适合绘图
在 Python 中,[] 表示一个列表(List),它是一个可以存储多个元素的数据结构。

enumerate() 可以让你在遍历列表或其他可迭代对象时,同时获取索引和对应的值。



Tomcat安装的问题(jdk-21)
首先检查Java的环境变量配了没
然后直接去官网找直装(如果不可以就去配一下Tomcat 的环境变量)
------
第一章 整体概述(选填)
计算机网络:利用通信线路和交换设备将地理位置分散的、具有独立功能的多台计算机连接起来,
按照某种协议进行数据通信、实现资源共享的信息系统。

电路交换是以电路连接为目的的交换方式,通信之前要在通信双方之间建立一条被双方独占的物理通道(由通信双方之间的交换设备和链路逐段连接而成)。
报文交换是以报文为数据交换的单位,报文携带有目标地址、源地址等信息,报文整个地发送,一次一跳,在交换结点采用存储转发的传输方式,即将到达交换机的分组先送到存储器暂时存储和处理,等到相应的输出电路有空闲时再送出。
分组交换基于报文交换,将报文划分为更小的数据单位:报文分组(也称为段、包、分组)。分组交换仍采用存储转发传输方式,但将一个长报文先分割为若干个较短的分组,然后把这些分组(携带源、目的地址和编号信息)逐个地发送出去。






第二章 物理层(选填)
物理层:确定与接口有关的一些特性。
机械特性:规定物理连接时所采用的规格、接口形状、引线数目、引脚数量和排列情况。
电气特性:规定传输二进制位时,线路上信号的电压范围、阻抗匹配、传输速率和距离限制等。
功能特性:指明某条线上出现的某一电平表示何种意义,接口部件的信号线的用途。
规程特性:(过程特性)定义各条物理线路的工作规程和时序关系。
某网络在物理层规定,+10~15V表示二进制0,-10~15V表示二进制1
电线长度限于15m以内

模拟信号更适合远程传输,数字信号容易损失,所以需要先转换
一个横杠就是一个码元,一个码元携带 log2V 个 bit
消息:通信的目的是传送消息,如语音、文字、图像、视频等。
数据:数据是运送消息的实体 0/1
信号:信号是数据的电气或电磁表现

奈氏准则和香农地理

信道复用技术

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。










-----突然意识到这些期末速成的视频,,我好像有点看不习惯了,------
在CSDN上这么多速成的题目文章,比起视频感觉现在更适合我了
那问题也来了,原来期末这么好应付吗,,是天灵盖开了还是怎么
那我现在岂不是有充足的时间准备暑期的游戏投简历实习了?
可以,疯批起来了,,哈哈
游戏的话我感觉先跟着那个国外的Alex Dev做掉那个RPG 的游戏,至少要做一个完成的项目,,
而且要尽快,,三周之内要看完解决
之后要不要打比赛,,还有看看岗位,,岗位上的需求要么就是不写的明确,要么就是明确但很多自己都没学过,,但都可以投,,
感觉还是打比赛,,有真正的比赛出项目,这个会很重要,,自己做的可能竞争力不会很高
,,,
那翻篇了,,现在就可以高权重投入了,开始吧
----------------------------------------
在 Inspector 里看到的 public 变量的值,只会影响运行前的初始化值,而不会动态同步代码里的赋值,它的主要作用就是在 运行时测试修改。

Inspector 里的值优先级更高,即使你在脚本里赋值,Inspector 里手动修改过的值会保持不变。
你可以在运行时(Play 模式)修改它的值,观察效果,比如调整速度、颜色、大小等参数。
为什么代码里的 public float 赋值后,Inspector 里不变?
🔍 因为 Unity 序列化了 public 变量,并把 Inspector 里的值存储在 .scene 文件或 .prefab 里。
这意味着:
- 如果变量在 Inspector 里被手动修改过,它会忽略你在代码里的默认值。
- 但如果你完全删除这个变量,再重新写,它会恢复代码里的默认值。

public class Example : MonoBehaviour
{[SerializeField] private float myValue = 10f; // Inspector 里会显示,但不会存储覆盖代码的默认值
}
Sprite(精灵)导入设置 中的部分选项,主要用于 2D 游戏开发
Sprite Mode(精灵模式)
Single(默认):单张 Sprite 纹理,即整个图片作为一个精灵对象使用。- ✅
Multiple(多精灵模式):允许在 Sprite Editor(精灵编辑器)中手动切割这张图片,将其分成多个小的 子 Sprite,用于 精灵动画、Tilemaps(瓦片地图)、角色拼接 等。
Packing Tag(打包标签)
- 用于 Sprite Atlas(精灵图集)优化,可以将多个 Sprite 组合到 同一个纹理,减少 Draw Call(减少渲染开销)。
- 默认是空的,如果使用 Sprite Atlas,可以手动填写相同的 Tag,让 Unity 自动打包这些 Sprite 进行优化。
💡 你的 Packing Tag 是灰色的,表示没有使用 Sprite Atlas(或没有启用 Enable Sprite Atlas Packing)。
Pixels Per Unit(单位像素)
- 定义多少个像素等于 1 个 Unity 世界单位。
- 默认值通常是
100,但像素风格游戏通常使用 16、32、64 等 以适配网格大小。 - 较小的值(如
16)表示 Sprite 更大,更适合像素风格游戏。
💡 你的设置是 16,意味着 16px = 1个 Unity 世界单位,适用于 低分辨率像素游戏。
Mesh Type(网格类型)
- 控制 Sprite 的 Mesh(网格)类型,影响 碰撞检测 和 渲染性能:
Tight(紧密包围):精确匹配 Sprite 的形状,减少透明区域,提高碰撞检测精度。(适用于不规则形状的 Sprite)Full Rect(完整矩形):用矩形包围整个 Sprite,计算更快,但可能会浪费多余的透明像素区域。(适用于规则矩形 Sprite)
💡 你的 Mesh Type 设置为 Tight,表示 Unity 会生成 紧密包围 Sprite 形状的网格,适用于 需要精确碰撞检测的 Sprite(如 角色、障碍物)。
Extrude Edges(边缘扩展)
- 扩展 Sprite 的边界像素,防止 贴图采样错误(像素边缘产生黑边或透明缝隙)。
- 适用于 Sprite 的
TightMesh Type,特别是当使用 非规则形状的 Sprite 并启用了 3D 光照、Shader、Tilemap 等 时。
💡 你的设置是 1,表示扩展 1 像素,防止采样错误。
Generate Physics Shape(生成物理碰撞形状)
- 是否自动为 Sprite 生成物理碰撞形状。
- ✅ 勾选后,Unity 会根据
TightMesh 形状生成 Collider(碰撞体),适用于 2D 物理系统(如PolygonCollider2D)。 - 如果未勾选,则默认使用
BoxCollider2D(矩形碰撞体)。
💡 你的选项是 ✅,表示 Unity 会 自动根据 Sprite 的形状生成碰撞体,适用于 物理碰撞检测(如角色与地面碰撞)。
sprite editor的操作种类
Custom Outline(自定义轮廓)
-
用于调整 Sprite 的网格轮廓(Mesh Outline),影响渲染和物理碰撞形状。
-
默认情况下,Unity 会自动生成一个包围 Sprite 的 Tight(紧密) 或 Full Rect(矩形) 网格。
-
手动调整 Custom Outline,可以减少透明区域的网格点,提高渲染效率。
✅ 适用场景: ✔ 优化 2D 渲染,减少不必要的透明像素网格(提高性能)。
✔ 自定义 Sprite 网格形状,防止意外的黑边或采样错误。
Custom Physics Shape(自定义物理碰撞形状)
-
用于编辑 Sprite 生成的
PolygonCollider2D(多边形碰撞体)形状。 -
如果
Generate Physics Shape选项启用,Unity 会 自动计算物理形状,但有时不够精确。 -
可以手动调整碰撞体的顶点,确保 碰撞更加符合角色外形。
✅ 适用场景: ✔ 2D 角色、障碍物、地形的碰撞检测。
✔ 自动生成的碰撞体不精准,需要手动修正。
✔ 优化物理性能,减少不必要的碰撞计算(精简多边形点数)。
Secondary Textures(次要纹理)
-
用于 Unity 的
Sprite Renderer多层纹理系统(如法线贴图、光照贴图)。 -
允许给 Sprite 绑定多个额外的贴图,比如:
-
Normal Map(法线贴图) → 让 2D Sprite 受光照影响,模拟 3D 质感。
-
Emission Map(自发光贴图) → 让某些区域发光,比如霓虹灯效果。
-
✅ 适用场景: ✔ 2D 角色使用光照贴图,增强视觉效果。
✔ 希望 2D 角色受光照影响,增加立体感(法线贴图)。
✔ 需要特殊效果,如局部发光、透明遮罩等。
Skinning Editor(蒙皮编辑器)
-
用于 2D 骨骼动画(Skeletal Animation),搭配 2D Animation Package。
-
可以给 Sprite 绑定骨骼(Bone),用于 2D 骨骼动画系统(类似 Spine、DragonBones)。
-
允许调整网格权重(Weight)、骨骼影响范围。
✅ 适用场景: ✔ 2D 角色动画(骨骼绑定、网格变形)。
✔ 不想用逐帧动画,改用骨骼动画优化性能。
✔ 创建皮肤变形效果(如布料、柔软物体)。
Sprite Editor里的Slice(切割)工具

1️⃣ Type(切割类型)
- 控制 Unity 如何自动分割 Sprite。
- 可选值:
Automatic(自动) ✅ 默认- Unity 根据透明像素区域自动检测并切割 Sprite。
Grid by Cell Size(按网格大小切割)- 适用于 Tilemaps(瓦片地图)或像素艺术。
- 需要手动输入每个 Sprite 的宽高(Cell Size)。
Grid by Cell Count(按网格数量切割)- 指定 Sprite 要划分成多少行 & 列,Unity 自动计算尺寸。
💡 你的设置是 Automatic,Unity 会根据透明区域自动检测并切割 Sprite。
2️⃣ Pivot(轴心点)
- 决定每个 Sprite 的
Pivot(轴心点),影响旋转、碰撞体、动画对齐等。 - 可选值:
Center(中心) ✅ 默认Top Left(左上)Bottom Right(右下)Custom(自定义) → 允许手动输入X/Y坐标。
💡 你的设置是 Center(中心点),适用于大多数情况。
但如果是瓦片地图(Tilemaps),建议用 Bottom Left,防止对齐问题。
3️⃣ Method(切割方法)
- 控制 Unity 如何处理原有的 Sprite 切割信息。
- 可选值:
Delete Existing(删除现有) ⚠ 你的选择- 删除当前所有的 Sprite 并重新创建(可能会导致 Sprite 关联丢失)。
- 适用于完全重新切割的情况。
Smart(智能)- 保留已有的 Sprite 切割信息,但会优化未被覆盖的部分。
Safe(安全)- 仅在不影响现有 Sprite 结构的情况下进行切割,不会破坏已有数据。
💡 ⚠ 你的设置是 Delete Existing,可能会导致 Sprite 关联丢失(比如已经绑定的动画、Prefab 里的 Sprite 可能会失效)。
✅ 推荐 Smart 或 Safe,除非你确实想完全重新切割。
4️⃣ Slice(开始切割按钮)
- 点击
Slice按钮后,Unity 会按照上面选择的规则切割 Sprite。 - 如果 Method 选择
Delete Existing,原有的 Sprite 数据会丢失,请谨慎操作。
------------
默认情况下,Unity 的网格(Grid)是一单位 1m × 1m(即 1 个方格 = 1 米)。
虽然 Sprite(精灵) 主要用于 2D 游戏,但 Filter Mode(过滤模式)的作用与 3D 纹理相同,仍然是控制 Sprite 在缩放时的像素显示效果
Sprite(纹理同理)Advanced设置

1️⃣ Wrap Mode(纹理环绕模式)
- 决定当纹理坐标超出 0-1 范围时,纹理如何重复或拉伸。
- 常见值:
Repeat(重复):纹理会不断重复,适用于地板、墙壁等连续贴图。Clamp(边缘拉伸):超出纹理范围的部分会拉伸边缘的颜色,适用于天空盒、UI 等。
💡 你的设置是 Clamp,表示纹理边缘不会重复,而是拉伸最后一个像素。
2️⃣ Filter Mode(纹理过滤模式)
- 控制当纹理被缩放(放大或缩小)时,像素如何进行插值计算。
- 选项:
Point (No Filter)(点过滤,无插值)- 纹理 保持像素风格,清晰但可能有锯齿。
- 适用于像素艺术游戏(Pixel Art)或低分辨率 UI。
Bilinear(双线性过滤)- 纹理在放大/缩小时会进行平滑插值,但不会考虑不同 Mipmap 层级。
- 适用于普通 3D 贴图,不希望看到像素化效果。
Trilinear(三线性过滤)- 进一步改进双线性过滤,并在不同的 Mipmap 层级 之间平滑过渡。
- 适用于 3D 物体的高质量贴图(如逼真的地面、角色皮肤)。
💡 你的设置是 Point (No Filter),表示 Unity 不会对纹理进行平滑处理,适用于 像素风格游戏(Pixel Art) 或 低分辨率贴图,确保每个像素都是清晰的方块。
🎯 过滤模式(Filter Mode)本质上在做什么?
是的,你的理解基本正确。Unity 里的 Filter Mode(纹理过滤模式)主要用于处理 纹理(Texture)在放大或缩小时的像素插值方式,确保它能以合适的方式渲染到屏幕上。
图片的最基础单位是像素(Pixel),它本身是固定的大小
一张 2D 纹理有 Pixels Per Unit(PPU),用于确定 多少像素 = 1 个 Unity 世界单位
当纹理被缩放时(无论是 3D 还是 2D),原始像素点(Pixel)需要进行插值(Interpolation),以填充新的像素点,让它适配 Unity 里的显示大小
纹理过滤的主要原理
当你放大(或缩小)一张图片,新的像素点必须由 Unity 计算并“猜测”:
- ❌ 直接复制像素(无插值) → 导致硬边、像素化效果(
Point)。 - ✅ 取多个像素的加权平均值 → 平滑过渡,减少锯齿感(
Bilinear,Trilinear)。 - 📌 取多个 Mipmap 层级进行插值 → 减少远距离的模糊或闪烁(
Trilinear)。

Trilinear 最平滑,但计算量更大。Bilinear 适中,但远处可能有点模糊
Point 最快,但直接复制增添,不考虑过渡。
---------
Multiple模式下的图片,如果slice成多张了,拖到场景里会自动带上要你生成animator状态机文件

一格代表一帧,到1.00的时候总共有12帧,也就是一秒内会播放下一张图片,一共切换11次,
这里记录的更重点的是速度,切换的速度,自己塞了多少张图关系不大,调整前后之间的间隙,增大就是切换的次数更少了
也就是手动调小帧率,但Animation里有一点很重要的是,里面有默认的帧率可以给你使用
但这里因为是像素的,一套动作只有五张图片,如果帧率太高,那图片又很少,就会加快切换图片的速度

把帧率调为2的时候,这种只是切换图片的调控感就更加体现出来了
一秒只切换一次图片,一帧的所有状态保留时间,是0.5秒
Awake() vs Start() 的区别
在 Unity 中,Awake() 和 Start() 都是 MonoBehaviour 生命周期方法,它们的主要作用是在游戏对象(GameObject)启用时进行初始化。但是,它们的调用时机有所不同:
| 方法 | 调用时机 | 调用顺序 | 适用场景 |
|---|---|---|---|
Awake() | 脚本实例化时(比 Start() 更早) | 不管 GameObject 是否启用,都会调用 | 用于对象依赖关系初始化(例如 Singleton、加载数据、动态绑定对象等) |
Start() | 在 Awake() 之后、第一帧 Update() 之前调用 | 只有 GameObject 启用(enabled = true)时才会调用 | 用于场景初始化(如摄像机定位、对象间的交互等) |
--------
相关文章:
自由学习记录(38)
python语法 def def print_receipt (store_name, items, total_price, cashier"Self-Checkout", payment_method"Credit Card"): Python 的 函数定义 语法 def print_receipt(...) → 定义了一个名为 print_receipt 的函数。store_name, items, total_…...
【SQL实验】触发器
下载素材文件”tsgl”、“成绩管理”,将tsgl.bak和成绩管理.bak数据库还原到库中【导入操作在之前的文章中详细讲过】 触发器 1、为图书表设置更新触发器,根据总编号来更新书名、作者、出版社、分类号和单价(根据总编号找到相应记录,然后更新书名、作者…...
C语言:二维数组在内存中是怎么存储的
目录 1. 二维数组的定义: 2. 行主序存储: 具体内存排列: 3. 如何通过指针访问数据: 4. 总结: 在 C 语言中,二维数组是按 行主序(row-major order) 存储的。也就是说,…...
CPU多级缓存机制
目录 一、前置知识 ---- CPU的核心 1.1. 单核与多核CPU 二、CPU多级缓存机制 三. 缓存的基本结构/缓存的存储结构 四、CPU缓存的运作流程/工作原理 五、CPU多级缓存机制的工作原理【简化版】 5.1. 缓存访问的过程 (5.1.1) L1缓存(一级缓存)访问 …...
Ansible剧本-playbook
Ansible剧本-playbook 1 playbook基础1.1 简介1.2 playbook的组成结构Task 任务列表任务报错,如何继续执行响应事件Handler 1.3 常用选项执行playbookplaybook查询帮助信息校验playbook语法测试playbook能否正常运行 2 变量 的定义方式2.1 定义规则2.2 vars 变量2.3…...
神经网络八股(3)
1.什么是梯度消失和梯度爆炸 梯度消失是指梯度在反向传播的过程中逐渐变小,最终趋近于零,这会导致靠前层的神经网络层权重参数更新缓慢,甚至不更新,学习不到有用的特征。 梯度爆炸是指梯度在方向传播过程中逐渐变大,…...
SmartMediakit之音视频直播技术的极致体验与广泛应用
引言 在数字化时代,音视频直播技术已经深入到各个行业和领域,成为信息传递和交流的重要手段。视沃科技自2015年成立以来,一直致力于为传统行业提供极致体验的音视频直播技术解决方案,其旗下的大牛直播SDK凭借强大的功能和卓越的性…...
【R包】tidyplots----取代ggplot2的科研绘图利器
文章目录 介绍安装Usage文档参考 介绍 tidyplots----取代ggplot2的科研绘图利器。tidyplots的目标是简化为科学论文准备出版的情节的创建。它允许使用一致和直观的语法逐渐添加,删除和调整情节组件。 安装 You can install the released version of tidyplots fro…...
DeepSeek 15天指导手册——从入门到精通 PDF(附下载)
DeepSeek使用教程系列--DeepSeek 15天指导手册——从入门到精通pdf下载: https://pan.baidu.com/s/1PrIo0Xo0h5s6Plcc_smS8w?pwd1234 提取码: 1234 或 https://pan.quark.cn/s/2e8de75027d3 《DeepSeek 15天指导手册——从入门到精通》以系统化学习路径为核心&…...
C++知识点总结与复习
c中常见的关键字(面试题中经常出现) const 总结常见用法: const int a; //定义了常量整形的变量 a; 常量表示不可修改,定义的时候必须初始化。除此之外,和 int a;使用一样。 const int * p;//定义了指向常量整形变量的指针。…...
微信小程序实现拉卡拉支付
功能需求:拉卡拉支付(通过跳转拉卡拉平台进行支付),他人支付(通过链接进行平台跳转支付) 1.支付操作 //支付 const onCanStartPay async (obj) > {uni.showLoading({mask: true})// 支付接口获取需要传…...
全面汇总windows进程通信(二)
在Windows操作系统下,实现进程间通信(IPC, Inter-Process Communication)有几种常见的方法,包括使用管道(Pipe)、共享内存(Shared Memory)、消息队列(Message Queue)、命名管道(Named Pipe)、套接字(Socket)等。本文介绍如下几种: 信号量(Semaphore)和互斥量(…...
Unity 第三人称人物切动画时人物莫名旋转
前提: 使用Starter Asset包中的第三人称插件包. 在给3D角色的动画器增加新动画时, 发现进入新动画会让角色莫名转动. 观察后发现是动画强行将朝向掰"正", 人物动画在进行时朝向会一直变化, 这使得动作非常的怪异. 对系动画进行以下处理后, 将可以解决这种不自然: 选…...
启动Redis报错记录
突然启动Redis就报了个错:‘Could not create server TCP listening socket 127.0.0.1:6379: bind: 操作成功完成。‘ 查了下解决方案,应该是6379端口已绑定,服务没有关闭。 需要输入命令redis-cli 再输入shutdown 但又出现了新的问题&…...
vue2响应式数据原理
1. 核心原理 Vue 2 的响应式系统基于 Object.defineProperty,通过 依赖收集 和 派发更新 来实现数据的响应式 依赖收集:在读取数据时,记录哪些函数(或组件)依赖了该数据。派发更新:在修改数据时ÿ…...
OpenBMC:BmcWeb实例化App
BmcWeb是OpenBMC的一个核心模块,对外负责响应Redfish请求,并且由于OpenBMC的Web使用的Redfish api,所以BmcWeb也是Web的后台。 1.main函数 //src\webserver_main.cpp #include "webserver_run.hpp"int main(int /*argc*/, char** /*argv*/) noexcept(false) {re…...
二级公共基础之数据库设计基础(一) 数据库系统的基本概念
目录 前言 一、数据库、数据管理系统和数据库系统 1.数据 2.数据库 3.数据库管理系统 1.数据库管理系统的定义 2.数据库管理系统的功能 1.数据定义功能 2.数据操作功能 3.数据存取控制 4.数据完整性管理 5.数据备份和恢复 6.并发控制 4.数…...
自然语言处理NLP 04案例——苏宁易购优质评论与差评分析
上一篇文章,我们爬取了苏宁易购平台某产品的优质评价和差评,今天我们对优质评价与差评进行分析 selenium爬取苏宁易购平台某产品的评论-CSDN博客 目录 1. 数据加载 2. 中文分词 3. 停用词处理 4. 数据标注与合并 5. 数据集划分 6. 文本特征提取 …...
图片爬取案例
修改前的代码 但是总显示“失败” 原因是 修改之后的代码 import requests import os from urllib.parse import unquote# 原始URL url https://cn.bing.com/images/search?viewdetailV2&ccidTnImuvQ0&id5AE65CE4BE05EE7A79A73EEFA37578E87AE19421&thidOIP.TnI…...
leetcode_动态规划/递归 70. 爬楼梯
70. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 思路: 考虑: 假设现在已经爬到了某一阶台阶,那是如何到达这里的呢?可能是从前一阶台阶爬上来的&am…...
VoIP之音频3A技术
音频3A技术是改善语音通话质量的三种关键技术的简称,包括声学回声消除(Acoustic Echo Cancellation, AEC)、自动增益控制(Automatic Gain Control, AGC)、自噪声抑制(Automatic Noise Suppression, ANS&…...
SpringBoot 03 Web开发
SpringBoot 代替了SSM整合,避免了版本依赖冲突,不在需要手写配置文件 前言 springboot提供了starter场景启动器(web,Tomcat,jdbc),自带相关组件实现自动配置 场景启动器 一、自动配置 1.自动…...
官方文档学习TArray容器
一.TArray中的元素相等 1.重载一下 元素中的 运算符,有时需要重载排序。接下来,我们将id 作为判断结构体的标识。 定义结构体 USTRUCT() struct FXGEqualStructInfo {GENERATED_USTRUCT_BODY() public:FXGEqualStructInfo(){};FXGEqualStructInfo(in…...
Web刷题之PolarDN(中等)
1.到底给不给flag呢 代码审计 一道典型的php变量覆盖漏洞 相关知识 什么是变量覆盖漏洞 自定义的参数值替换原有变量值的情况称为变量覆盖漏洞 经常导致变量覆盖漏洞场景有:$$使用不当,extract()函数使用不当,parse_str()函数使用不当&…...
Https通信中证书验证流程
在 HTTPS 通信中,客户端验证服务器证书的有效性是确保通信安全的重要步骤。这一过程通常被称为 证书链验证 或 SSL/TLS 证书验证。以下是详细的流程和实现细节: 1. 证书验证的整体流程 客户端验证服务器证书的有效性主要包括以下几个步骤: …...
学习笔记-250222
论文: Learning Hierarchical Prompt with Structured Linguistic Knowledge for Vision-Language Models 主要研究llm在图像分类中的能力,当提示输入目标类别时,llm能够生成相关的描述以及相应的结构化关系。 1.首先利用llm从普通的描述中获…...
Unity游戏制作中的C#基础(1)界面操作基础
1.脚本有关注意事项 (1).进入项目之后,一般创建一个文件夹Scripts用来存放c#脚本; (2).在Scripts中创建脚本,双击脚本,进入VS编辑器,有如下结构: start&#…...
为什么要将PDF转换为CSV?CSV是Excel吗?
在企业和数据管理的日常工作中,PDF文件和CSV文件承担着各自的任务。PDF通常用于传输和展示静态的文档,而CSV因其简洁、易操作的特性,广泛应用于数据存储和交换。如果需要从PDF中提取、分析或处理数据,转换为CSV格式可能是一个高效…...
Android KMP初探
Android KMP初探 前言: 最近线上听了Kotlin官网举行的KMP会议,感觉听神奇的,于是就把官方demo下载下来尝试了一下,下载插件和所需要的依赖都用了很久,但是发现里面的代码很少,于是尝试自己手写了一下&…...
网络安全之Web后端PHP
目录 一、PHP基础语法 1.PHP基础 (1)php的优点 (2)PhpStorm的优点 2.PHP基本语法 3.PHP变量 4.PHP运算符 二、PHP流控与数组 1.php流程控制语句以及循环 (1)if 语句 (2)if…...
