自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(225)
  • 资源 (31)
  • 收藏
  • 关注

原创 I/O多路复用机制的区别(select, poll, epoll)

每次调用时,都需要将完整的fd集合从用户态拷贝到内核态。最后再将整个集合(或标记了就绪状态的集合)拷贝回用户态,用户程序还需要再次遍历以找出真正就绪的fd。epoll主要通过其独特的设计机制来显著减少数据拷贝的开销,其核心在于将频繁的、全量的数据拷贝转变为一次性的注册和高效的事件通知。所有被监视的fd,而只需检查就绪链表是否为空。这个回调函数,该函数将对应的fd加入到就绪链表中。,应用程序可以直接处理,无需再遍历所有监控的fd来判断哪些真正就绪。系统调用,将需要监控的文件描述符(fd)及其关注的事件。

2025-12-15 11:26:36 636

原创 log4cplus实现网络日志发送、存储(组播地址发送接收)

log4cplus自2.0.0版本以及支持了udp模式,但是在我的嵌入式设备无法交叉编译,因此在1.2.1版本加入udp支持。​ 是一个仿照 log4j 用 C++ 实现的强大、灵活、可配置的日志库。,它负责将日志事件序列化并通过网络发送到远端的日志服务器。要实现网络日志,核心就是使用或自定义一个 ​。

2025-11-20 13:46:20 161

原创 emmc使用寿命预估

eMMC 的寿命主要受限于其 NAND Flash 存储单元的编程/擦除(P/E)循环次数。一个存储单元存储的 bit 数越多,其寿命和性能通常越低。NAND 类型全称说明典型擦写寿命 (P/E 次数)​SLC​一个存储单元存储 1 bit 数据,性能高,寿命长。​MLC​一个存储单元存储 2 bit 数据,性能与寿命适中。​TLC​一个存储单元存储 3 bit 数据,成本低,寿命相对较短。​QLC​一个存储单元存储 4 bit 数据,容量密度高,寿命最短。​性能比较。

2025-11-20 10:35:38 492

原创 rtsp中的base64

sprop-parameter-sets 包含了H.264解码所必需的序列参数集(SPS)​​ 和图像参数集(PPS)​,它们以逗号分隔,并采用 ​Base64​ 编码。解码后,我们得到原始的字节序列:​​00 00 01​aO48gA==​。

2025-11-19 09:47:30 279

原创 log4cplus实现网络日志发送、存储

​ 是一个仿照 log4j 用 C++ 实现的强大、灵活、可配置的日志库。要实现网络日志,核心就是使用或自定义一个 ​,它负责将日志事件序列化并通过网络发送到远端的日志服务器。​​。

2025-11-14 10:35:14 242

原创 从中国高铁(CRH)为什么没有4型车说起

正是这种“双巨头”你追我赶的态势,极大地激发了两大集团消化吸收国外技术并加速自主创新的紧迫感,为日后CRH380系列乃至完全自主知识产权的“复兴号”的诞生埋下了伏笔。当时中国轨道交通装备制造业的两大巨头——中国南车和中国北车(2015年合并为中国中车),被塑造成了相互竞争的“国家队”。决策者的最高明之处在于,​。所以,“CRH4”这个编号概念,最终以更高级的“CRH400”形式,体现在了下一代高速列车的研发试验环节。这个文化因素就是,数字“4”的发音与“死”非常相近,因此它被认为是一个不吉利的数字。

2025-11-12 19:55:45 324

原创 zlmediakit nginx srs 做为流媒体服务器的区别

首先,我们需要明确这三者的“出身”和核心定位,这决定了它们的设计哲学和适用场景。​ZLMediaKit​​出身:​​ 由国内开发者(ZeroLogic)主导开发,采用 C++11 编写。​核心定位:​​ ​高性能、高可靠性、跨平台的流媒体服务框架。它从一开始就致力于支持多种协议(RTSP/RTMP/HLS/HTTP-FLV/WebSocket-FLV/GB28181等),并特别注重作为安防监控、物联网(IoT)​​ 等场景的媒体网关或服务器。它的设计非常模块化,代码质量高。​关键词:​。

2025-11-12 15:59:40 592

原创 RTMP、HTTP-FLV、HLS 的主要区别是什么

从协议设计的理论层面讲,RTMP 和 HTTP-FLV 的流式传输模式决定了它们的延迟应该在同一个量级(1-3秒)。但在实际应用中,HTTP-FLV 通常能做到比 RTMP 更低、更稳定的延迟,主要原因有三点:”​连接建立效率:HTTP-FLV 基于 HTTP,一次简单的握手即可开始传输数据;而 RTMP 需要三次握手,在网络差时重连慢,增加了初始延迟。​​​网络环境友好性:HTTP 是标准协议,穿透防火墙和代理的能力极强,不会被错误拦截或限制,保证了传输的稳定性。​​​。

2025-11-12 15:56:20 657

原创 RTMP 协议的三次握手和 TCP 的三次握手

​​现在我们来详细拆解。

2025-11-12 15:53:33 777

原创 地铁车辆架修、大修的区别

简单来说,​架修是“重点治疗”​,针对车辆最核心、最关键的磨损系统进行深度保养;而大修是“全身大手术”​,旨在将车辆整体性能恢复到接近新车的状态,是周期最长、范围最广、程度最深、成本最高的一种维修模式。两者共同构成了地铁车辆全寿命周期管理中的重要环节,是确保地铁运营安全、可靠、高效的关键。

2025-11-12 15:49:32 907

原创 为什么从rtsp拉取的媒体流,每个流的rtp时间戳都不是从0开始的

摄像头 A 随机到 0x3c5a1234,摄像头 B 随机到 0x9f00abcd,即使它们同一时刻出帧,RTP 时间戳也不同,接收端靠 RTCP SR 各自映射到 NTP 即可,不会把两路流当成同一条。只要拿到每个流的 SR,就可以把任意一个 RTP 时间戳换算成绝对时钟(NTP)时间,然后再把不同流的数据对齐到同一个时间轴,后面再按解码/渲染时钟做平滑播放即可。两条流都这样做,相当于强行把 b 设为 0,误差就被压缩到“第一帧到达时间差”以内(通常 0–50 ms)。

2025-11-12 13:56:33 758

原创 opencv4实现磨皮美颜,并结合ffmpeg直播推流

在OpenCV4中实现实时的磨皮美颜并推流到直播服务器。流程图如下:fill:#333;color:#333;color:#333;fill:none;摄像头视频捕获美颜处理管线人脸与皮肤检测磨皮与美白细节增强与融合处理后的帧编码与推流FFmpeg子进程RTMP服务器观众端播放。

2025-10-25 16:39:43 952

原创 opencv4实现磨皮美颜

OpenCV4 提供了强大的图像处理功能来实现自然的磨皮美颜效果。

2025-10-25 16:37:23 790

原创 用ngix搭建rtmp流媒体服务器

​安装编译依赖​首先,确保你的系统(如CentOS或Ubuntu)已安装必要的编译工具和库。这些是编译Nginx及其RTMP模块的基础 。​获取源码​需要下载Nginx源代码和模块的源码 。​编译安装Nginx​进入Nginx源码目录,在配置阶段添加RTMP模块,然后进行编译和安装 。默认安装路径通常是 。安装完成后,需要编辑Nginx的配置文件(通常为 ),在其中添加RTMP相关的配置。​基础RTMP配置​在文件的根部,与已有的块平级,添加配置块,定义一个基础的直播应用 。​可

2025-10-25 16:25:25 715

原创 printf是怎么将字符显示到屏幕的

函数本身并不关心字符编码,它处理的是字节。要正确显示非ASCII字符(如中文),需要确保程序内部处理的字符编码与最终终端模拟器所使用的字符编码(如UTF-8)保持一致,否则就会出现乱码。printf 函数将字符显示到屏幕是一个涉及多层级协作的过程,它并非直接与硬件交互,而是依赖于标准库、操作系统和硬件驱动的协同工作。​:缓冲机制是为了减少频繁调用底层系统函数的开销,从而提升I/O效率。语句,在程序运行中途可能看不到立即输出的原因。时缓冲区内容才会被刷新并显示。这也是为什么有时不包含。来强制立即刷新输出。

2025-10-16 15:08:28 263

原创 opencv使用Haar级联分类器进行人脸检测

在实际使用中,你可能需要根据具体图片调整。

2025-10-15 18:59:07 188

原创 使用face_detection 库实现人脸检测

这段代码使用face_detection 库实现了一个人脸检测功能。

2025-10-15 14:38:04 181

原创 从ls命令说起:深入理解Linux文件访问机制

在Linux系统中,ls命令是我们最常使用的命令之一。输入ls,屏幕上就会显示出当前目录下的文件和子目录名称。这看似简单的操作背后,却隐藏着一段精妙的系统交互过程。当我们在终端输入ls并按下回车时,系统会进行以下操作:首先读取当前目录的目录项,获取所有文件和子目录的inode号;然后根据inode号,读取每个文件或目录的inode,获取其元数据;最后将获取的文件名和inode信息格式化并输出到终端。这个过程涉及文件系统、内存管理、设备驱动等多个子系统的协同工作。

2025-10-11 11:43:49 312

原创 地铁列车清客遗留物检测系统

在列车每日运营结束、抵达线路终点站(末站)后,该系统被用以替代传统的人工检查,自动化快速完成。系统自动化的快速识别与报警机制,大大缩短了从发现到处置的响应时间,为公共安全提供了强有力的技术支撑。,辅助工作人员快速查找,显著提高失物招领的效率,从而提升乘客的满意度和乘车体验。一旦发现可疑静止物品,系统可立即触发告警,通知列车工作人员前往查看,从而实现。,确保列车在回库前无任何乘客或物品被遗漏,保障运营安全并提升交接效率。,避免物品最终被遗留在终点站,提升乘客服务质量。判定是否为已知遗留物?

2025-09-30 13:14:09 1017

原创 内存管理三原则

遵循这三条内存管理原则,可以显著提高C++代码的质量和安全性。记住:能用栈就别用堆,必须用堆就用智能指针,裸指针应该成为历史遗迹。让这些原则成为你代码审查中的红线,团队开发会更加高效和安全。栈内存分配速度快,由编译器自动管理生命周期,完全避免了内存泄漏的风险。当变量超出作用域时,栈内存会自动释放。​:独占所有权,不可复制但可移动。​:不增加引用计数的观察者指针。​:共享所有权,引用计数。使用标准容器管理对象集合。使用智能指针管理所有权。

2025-09-30 10:26:58 261

原创 使用 libssh2 建立安全的 SSH 连接

把本文代码片段复制到项目里,改 IP、用户名、密钥路径即可跑通第一条安全 SSH 连接!3.3 TCP 连接(POSIX 示例)五、非阻塞模式要点(高并发/单线程)1.2 为什么选 libssh2。三、建立 SSH 连接(阻塞版)VS2015+ 自带;所有可能阻塞的函数都会先返回。3.6 完整示例(单文件版)六、Windows 专属注意。1.1 为什么选 SSH。四、文件传输(SFTP)3.4 握手 & 认证。

2025-09-29 16:40:46 408

原创 解决PyTorch模型加载时的设备不匹配错误

在Easy-Wav2Lip项目中,我遇到了典型的设备不匹配问题。它表明模型权重(weight)和输入数据(input)不在同一个设备上,一个在CPU,另一个在GPU。

2025-09-29 00:26:15 311

原创 你敢说精通C++?对象生命周期与资源管理

​:以下代码中,Resource的析构函数何时被调用?是否存在悬空引用风险?​res。

2025-09-19 09:17:57 221

原创 你敢说精通C++吗?移动语义与完美转发​

​实现一个泛型函数forward_to_emplace,将参数完美转发给容器的emplace_back方法,并解释为什么需要std::forward而非std::move?​。

2025-09-19 09:04:57 353

原创 问题​:解释std::atomic<int>与volatile int在多线程环境下的本质区别,并说明为什么volatile不能用于线程安全的原子操作?

解释std::atomic与volatile int在多线程环境下的本质区别,并说明为什么volatile不能用于线程安全的原子操作?std::atomic提供真正的原子性(硬件级保证,如CAS指令)和内存顺序控制(如memory_order_relaxed)。volatile仅防止编译器优化(强制读写内存),但不保证原子性(可能被线程切换打断)或内存屏障(CPU重排序可能导致问题)。示例:volatile int i=0;i++;可能被编译为多条指令(非原子),而std::atomic i;

2025-09-18 17:18:00 560

原创 FFmpeg网络拉流阻塞问题与可靠超时处理方案

FFmpeg的网络拉流功能强大但易受网络环境影响。通过合理利用其中断回调机制,并结合单调时钟进行时间判断,可以有效地解决函数阻塞问题,并构建出健壮、可靠的流媒体应用。关键实践要点:• 优先使用中断回调:相比于协议特定的超时参数,中断回调提供更统一和可控的超时控制机制。• 依赖单调时钟:使用 av_gettime_relative() 来测量超时间隔,避免系统校时导致意外触发。• 设置合理的超时时间:根据网络环境和应用需求,为连接阶段和读取阶段设置不同的超时阈值。

2025-09-18 10:27:44 1246

原创 秒记 - ping常见故障

记忆键:“出门无回” → 网络可达,但回程被扔(丢包、过滤、往返路径不一致)。记忆键:“出门即被退” → 路由表/网关/子网配错,还没上路就回绝。记忆键:“门都没出就崩” → 本机系统/硬件故障,与网络无关。把“出门”当成临界点,三段故事顺下来,终身不忘。

2025-09-11 21:43:03 222

原创 希捷-命令行硬盘维护工具集-概览

s-i。

2025-09-11 11:50:28 753

原创 希捷-命令行硬盘维护工具集-SeaChest_Verify

2025-09-11 11:48:59 332

原创 希捷-命令行硬盘维护工具集-SeaChest_Security

2025-09-11 11:38:02 369

原创 希捷-命令行硬盘维护工具集-SeaChest_Reservations

2025-09-11 11:34:45 246

原创 希捷-命令行硬盘维护工具集-SeaChest_PowerControl

2025-09-11 11:31:32 837

原创 希捷-命令行硬盘维护工具集-SeaChest_NVMe

2025-09-11 11:29:08 463

原创 希捷-命令行硬盘维护工具集-SeaChest_Lite

2025-09-11 11:25:29 466

原创 希捷-命令行硬盘维护工具集-SeaChest_GenericTests

2025-09-11 11:21:28 381

原创 希捷-命令行硬盘维护工具集-SeaChest_FlushMC

2025-09-11 11:13:26 278

原创 希捷-命令行硬盘维护工具集-SeaChest_Format

2025-09-11 11:08:28 457

原创 希捷-命令行硬盘维护工具集-SeaChest_Firmware

2025-09-11 10:23:25 343

原创 希捷-命令行硬盘维护工具集-SeaChest_Erase

2025-09-11 10:18:12 546

原创 如何实时监控内核产生的新消息

这个命令会每1秒刷新一次,显示最新的20行内核消息。不同发行版的日志文件位置可能不同,也可以通过。许多Linux发行版会将内核消息记录到。持续监控并显示新的内核消息,类似。文件中,可以直接监控这个文件。表示只显示内核消息,表示实时跟踪新消息。

2025-09-11 09:06:04 180

STC12C5410芯片资料

宏晶科技生产的新一代增强型8051单片机,STC12C5410芯片资料

2009-03-15

MAX7219/MAX7221

MAX7219/MAX7221是一种集成化的串行输入/输出共阴极显示驱动器,它连接微处理器与8位数字的7段数字LED显示,也可以连接条线图显示器或者64个独立的LED。其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,而且还有一个8*8的静态RAM用来存储每一个数据。只有一个外部寄存器用来设置各个LED的段电流。MAX7221与SPI™、QSPI™以及 MICROWIRE™相兼容,同时它有限制回转电流的段驱动来减少EMI(电磁干扰)。 一个方便的四线串行接口可以联接所有通用的微处理器。每个数据可以寻址在更新时不需要改写所有的显示。MAX7219/MAX7221同样允许用户对每一个数据选择编码或者不编码。 整个设备包含一个150μA的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式。

2009-03-15

光耦应用全面介绍,绝对经典

─电子电路 2 目录7  彩电电源元器件参数和代换手册   微型计算机接口技术原理及应用   微波电子线路   惠丰变频器   接口与通讯精品讲义   接口设计指南   数字万用表应用技巧   数字万用表电路图集   数字功放设计   数据手册PIC16C62B,72A   数码摄像机电路图   数码管驱动电路集   新编电气工程师手册   新编电气工程师手册2   新编电气工程师手册3   无刷直流电机控制器   无线电制作精汇   无铅化电子组装》博士演講文章   时钟信号差分ac耦合仿真报告   智能快速充电器设计与制作   智能手机操作系统介绍   智能控制系统及其应用   智能无线通讯在促进汽车安全应用中的作用   智能机器人传感技术   最新世界三极管特性代换手册   最新电工实用经典线路范例   最深入、最专业的电容剖析   最深入最经典的电容剖析   有源视频滤波器   未来汽车信息终端平台研制的探讨和公司简介.深圳航盛9月.v20050821A   机械电子学   机电一体化系统的电磁兼容技术   标准数字电路4000系列数据手册   标准数字电路54-74HC全系列高速CMOS数据手册   模拟电子技术基础   模拟电子技术重点难点及典型题精解   步进电动机及其驱动控制系统   汽车电子行业测试测量的研讨   波分多段功能封装树脂   测量的初级读本   液晶显示器ACERAL708图   液晶显示器HitachiCML171SXW图   液晶显示器SAMSUNG320TFT520TFT图   液晶显示器SAMSUNG330TFT331TFT530TFT531TFT图   液晶显示器samsung570s580S图   深入浅出LPC9401 Flash 单片机    清华版labview教程   电动机的单片机控制   电子电路资料荟萃   电工技师手册   电感储能式脉冲发射电路    电磁兼容 综述 电磁兼容基本术语和定义的应用与解释pdf   电磁兼容培训   电磁兼容技术培训   电磁兼容标准与认证   电磁兼容EMC技术整改案例期刊   电路板级的电磁兼容设计   相位编组方法提取直线   硬件工程师手册   示波器   示波器基础   第一章FPGA设计的指导性原则(westor)   第三讲VerilogHDL基础   第二讲课后实验

2009-06-29

锂电池充电控制芯片CN3052A

500 毫安 USB接口兼容的线性锂离子电池充电器电路

2011-07-29

Linux 设备驱动程序庖丁解牛

要学习 Linux 驱动开发,首先应该搞明白 Linux 内核的架构,明白驱动程序到底扮演 了一个什么样的角色

2011-07-29

天嵌linux移植step by step

基于天嵌tq2440,linux移植,步骤详细

2011-07-29

Linux serial构架分析及驱动开发

Linux serial构架分析及驱动开发

2012-03-17

Linux嵌入式系统设计与开发

第一章 嵌入式系统开发环境的搭建 第二章 u-boot 的移植 第三章 linux内核移植 第四章 嵌入式设备的文件系统 第五章 busyBox移植与应用 第6章 linux字符设备驱动程序

2013-02-02

C++工程实践.pdf

程序员可能会误解语言构造的作用。对这样的误解,一些语言是更为开放的。 C语言中有相当多的地方能使程序员轻易产生误解。例如运算符优先级的规则。这些规则是良好定义的,但也非常复杂,也很容易对某特定表达式中运算符的优先级做出错误的假设。

2020-12-04

1-城市轨道交通视频监视系统应用实施指南(发布稿).pdf

为统一北京市城市轨道交通视频监视系统(VMS)的建设和运营,提升系统在网络化运营条件下的共享能力和综合处理能力,实现对各线路视频监视实时视频调用、录像回放和接口等数据的统一管理,北京市交通委颁布了此文件。

2020-12-04

armv7l架构,安卓系统,动态库文件

armv7l架构,安卓系统,动态库文件

2022-09-21

英文单词数据库.db

英文单词数据库.db,超过6000常用单词,内容简洁,包含发音和中文翻译。 英文单词数据库.db,超过6000常用单词,内容简洁,包含发音和中文翻译。 英文单词数据库.db,超过6000常用单词,内容简洁,包含发音和中文翻译。

2020-12-07

内核空间分布图

内核空间分布图,node节点0空间分布图

2013-01-31

5-城市轨道交通广播系统应用实施指南(发布稿).pdf

为统一北京市城市轨道交通视频监视系统(VMS)的建设和运营,提升系统在网络化运营条件下的共享能力和综合处理能力,实现对各线路视频监视实时视频调用、录像回放和接口等数据的统一管理,北京市交通委颁布了此文件。

2020-12-04

2-城市轨道交通视频监视系统检测实施指南(发布稿).pdf

为统一北京市城市轨道交通视频监视系统(VMS)的建设和运营,提升系统在网络化运营条件下的共享能力和综合处理能力,实现对各线路视频监视实时视频调用、录像回放和接口等数据的统一管理,北京市交通委颁布了此文件。

2020-12-04

《牛津英汉词典》txt格式

《牛津英汉词典》txt格式,采用英文字母分类统计。 收录单词、短语及释义总计约360000条,是收词量丰富的英汉双解词典; 精选本世纪以来的新词新义7000余条,反映语言的新发展; 汇集科技术语52000余项、百科知识条目12000余项,兼具语文词典与百科词典功能; 记录世界各地英语的使用情况,堪称国际英语词典;

2020-12-07

赵亮超能英语丨完美发音教程-4.pdf

赵亮超能英语丨完美发音教程

2020-12-04

赵亮超能英语丨完美发音教程-3.pdf

赵亮超能英语丨完美发音教程-3.pdf

2020-12-04

赵亮超能英语丨完美发音教程-2.pdf

赵亮超能英语|课堂笔记 完美发音教程 2

2020-12-04

赵亮超能英语丨完美发音教程-1.pdf

赵亮超能英语|课堂笔记 完美发音教程-1

2020-12-04

铜导线截面积载流量

铜导线截面积载流量:采用不同敷设方法的PVC绝缘铜导线或电缆的载流容量

2013-01-31

linux应用程序设计

linux应用程序设计

2012-03-17

Linux编程白皮书

本书对Linux操作系统及其编程作了整体的介绍,以支持用于开发软件的公开源码模型。对内存管理、进程及其通信机制、PCI、内核模块编程及内核系统结构作了详细的解释,且附有很多程序代码实例。对深入研究Linux下的编程有很大的帮助。

2019-01-05

linux内核代码架构图

linux内核代码架构图

2013-01-31

UNIX环境高级编程(中文版)

UNIX环境高级编程(Advanced Programming in the UNIX Environment,简称APUE)是 理查德·史蒂文斯 (Richard Stevens)写的一本介绍UNIX环境C语言编程接口的书籍。被 UNIX C 程序员誉为“圣经”。 本书最早问世于1992年,全面而细致地展示了UNIX系统的C接口,受到读者的普遍欢迎和好评。UNIX的原创者之一 ——丹尼斯·里奇(Dennis Ritchie) 也认为它是“公认的优秀、匠心独具的名著”。 该书的作者 理查德·史蒂文斯 于1999年辞世,后来由 Stephen A. Rago 对本书进行修订,出版了本书的第二版。第二版中增加了针对 Linux 、 FreeBSD 和 Darwin 等新兴类UNIX系统的内容。

2013-02-02

OrCAD培训教材-pdf格式

深圳某计算机软件公司出的Pspice培训教材。 熟悉PSpice的仿真功能,熟练掌握各种仿真参数的设置方法,综合观测并分析仿真结果,熟练输出分析结果,能够综合运用各种仿真对电路进行分析,学会修改模型参数

2009-06-29

Linux_C编程一站式学习_最新版

《Linux C编程一站式学习》有两条线索,一条线索是以Linux平台为载体全面深入地介绍c语言的语法和程序的工作原理,另一条线索是介绍程序设计的基本思想和开发调试方法。《Linux C编程一站式学习》分为两部分:第一部分讲解编程语言和程序设计的基本思想方法,让读者从概念上认识c语言;第二部分结合操作系统和体系结构的知识讲解程序的工作原理,让读者从本质上认识C语言。

2013-02-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除