自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(101)
  • 收藏
  • 关注

原创 哪些远程办公软件支持多屏协作?2026年7月远程办公工具横评:UU远程成首选,多屏协作、大文件传输等实用功能拉满

综合多屏协作、文件传输、弱网性能、画质延迟、安全加密、设备兼容、远程开机UU远程——综合实力断层第一。多屏协作(无线副屏全免费、4K 144Hz)、文件传输(高速+断点续传)、弱网性能(3%丢包卡顿率仅0.6%)、画质(免费4K+144帧)、安全(DTLS+AES-256)、免费策略(全功能无限制、无广告)。免费只是它的优点里最不重要的那个。

2026-07-11 13:56:39 35248 62

原创 2026年6月远程控制软件横评:UU远程、ToDesk、向日葵全方位对比

远程控制早已不是“应急连一下电脑”那么简单了。开发者用它连服务器改代码,设计师用它调家里的渲染机,留学生用它操作国内的网盘和银行App,甚至游戏玩家也用它“云挂机”。市面上主流的三款工具————各有拥趸,但到底谁在哪个场景下更顺手?这篇横评不吹不黑,直接把你最关心的七个核心能力摆在一起,逐项对比。

2026-06-24 17:55:01 16001 61

原创 保姆级教程:用Cline+DeepSeek打造本地AI编程助手

本文介绍了一种零成本在VS Code中搭建本地AI编程助手的方法,使用Cline插件与DeepSeek-V3模型组合,可作为Cursor的平替方案。该方案支持代码补全、重构、调试和单测生成等功能,且代码完全本地运行,保障隐私安全。教程包含三个阶段:环境准备、DeepSeek API配置和Ollama本地模型配置,适合希望提升编码效率但不愿支付Cursor订阅费用的开发者。最终方案成本仅为Cursor的1/50,同时提供与Cursor相似的开发体验。

2026-06-07 22:34:35 2430 78

原创 2026年6月UU远程:不只是远程桌面,它的终端更戳我

如果你经常需要远程操作电脑,又不想搞什么内网穿透、配置 SSH、开远程桌面,那 UU 远程这个终端功能真的省事。尤其手机也能用,应急的时候太方便了。而且它现在免费,也没时长限制。反正装一个也不亏,哪天在外面突然要敲命令了,你就知道它有多香了。

2026-06-01 10:57:45 14084 81

原创 保姆级教程:手把手搭建MCP服务器让AI替你干活

摘要: MCP(Model Context Protocol)是一种让AI模型与外部工具交互的协议标准,解决了AI"只会说不会做"的问题。本文提供从零搭建MCP服务器的保姆级教程: MCP原理:作为AI与工具间的"翻译官",统一管理文件系统、数据库、API等工具的调用 快速体验:通过Claude Desktop一键安装文件系统工具,实测AI创建文件和文件夹 手动配置:使用Python搭建MCP服务器,包含文件读写、目录列表等基础功能 开发流程:从环境配置到工具定义,详细展示如何创建自定义MCP服务 教程适合

2026-05-25 23:18:13 5246 83

原创 UU远程端口映射

在UU远程里点两下,127.0.0.1:端口,就能访问公司内网服务。对于不想折腾网络配置、只是想远程访问内网服务的普通人,这功能就够了。

2026-05-10 18:58:09 30654 111

原创 保姆级教程:零成本在本地跑AI大模型_Ollama

摘要 本文提供了一份零成本本地运行AI大模型的保姆级教程,重点介绍Ollama工具的安装和使用。Ollama是一个类似Docker的模型管理工具,支持在个人电脑上运行Qwen/DeepSeek/Llama等主流大模型,无需API Key和云服务器。教程包含三个主要部分: 安装Ollama(10分钟):支持Windows/macOS/Linux系统,提供环境变量配置指南 下载运行模型(15分钟):介绍如何下载3B/7B等不同参数规模的模型,并测试对话功能 启动API服务(10分钟):演示如何通过Python调

2026-05-07 21:53:55 5102 91

原创 命令行进度条完全指南:倒计时、缓冲区刷新与动态下载

本文介绍了如何在命令行实现进度条效果。首先讲解了回车换行符的区别和缓冲区刷新问题,通过一个简单倒计时程序演示了\r的用法。随后展示了两个版本的进度条实现:基础版本演示进度条原理,动态版本结合下载场景模拟实际应用。关键点包括使用\r实现行内覆盖、fflush强制刷新缓冲区、格式化输出控制进度显示,以及将进度条与实际任务进度关联。文章通过代码示例和GIF动图直观展示了进度条效果,适合需要开发命令行工具或显示任务进度的开发者参考。

2026-04-28 20:39:16 9332 108

原创 自动化构建工具:make 与 Makefile

本文介绍了自动化构建工具make和Makefile的基本原理与使用方法。主要内容包括:1)make通过Makefile定义的依赖关系和命令自动编译程序;2)Makefile基本结构包含目标、依赖文件和以Tab开头的命令;3)make通过文件修改时间判断是否需要重新编译;4)使用.PHONY声明伪目标来执行清理等非编译操作;5)Makefile的推导规则和简化写法,包括自动化变量($@、$^等)和模式规则;6)给出了一个通用Makefile模板,利用wildcard函数自动处理多个源文件。文章还解释了文件时间

2026-04-22 19:28:32 7898 102

原创 Vim编辑器使用详解:多模式、常用命令与配置技巧

本文讲解Vim常见操作,多模式详见,以及简单配置

2026-04-21 16:44:27 14476 107

原创 Linux 权限完全指南

Linux权限管理指南:用户切换与文件访问控制 本文详细介绍了Linux系统的权限管理机制。系统用户分为超级用户(root)和普通用户,可通过su命令切换。文件访问者分为拥有者、所属组和其他用户三类。文件权限包括读(r)、写(w)、执行(x)三种基本权限,可通过chmod命令修改。目录权限控制着用户能否进入目录及操作目录内文件。系统使用umask值决定新建文件的默认权限,计算方法为起始权限&(~umask)。特别介绍了粘滞位(t)的概念,设置粘滞位后目录中的文件只能被特定用户删除。最后总结了目录执行

2026-04-17 18:16:25 7960 85

原创 【Linux从入门到进阶】打包压缩、跨平台互传、内核版本、热键历史、关机与Shell原理一篇全搞定

本文介绍了Linux系统中常用的文件压缩与传输命令,包括zip/unzip、tar指令的使用方法和参数说明,以及Linux与Windows系统间的文件互传技巧。同时讲解了查看系统内核版本的方法、常用热键功能(如Tab补全、Ctrl+C终止)、历史命令查询和关机操作。最后通过形象比喻解释了Shell作为用户与内核间"媒婆"的工作原理,帮助理解命令行解释器的核心功能。文章涵盖了Linux基础操作中的关键知识点,适合初学者快速掌握基本命令和系统交互原理。

2026-04-16 16:39:17 8160 61

原创 Linux常用命令详解

本文介绍了Linux系统中常用的文件操作命令,包括cat、tac、echo、重定向、more、less、head、tail、date等。cat用于显示文件内容,tac可倒序输出;echo打印字符串,与cat不同;重定向操作符>和>>分别用于覆盖写入和追加写入;more和less用于分页查看文件,less支持更多搜索功能;head和tail分别查看文件开头和结尾内容,可结合管道使用;date命令用于显示和设置时间,支持多种时间格式转换和时间戳操作。这些命令是Linux系统管理和日志查看的基础

2026-04-15 18:05:26 18794 57

原创 保姆级教程:从零手写一个RAG系统

摘要 本教程提供了一个完整的RAG系统构建指南,让AI能够基于用户文档进行精准回答。主要内容包括: RAG原理:通过检索文档内容增强AI回答准确性,解决通用AI无法访问私有知识的问题 系统架构:包含文档加载、文本分块、向量化、检索和生成5个核心模块 实现步骤: 环境准备:安装依赖、配置目录结构 文档加载:支持TXT/PDF/DOCX格式的统一接口 后续将实现文本分块、向量化、检索和生成功能 教程采用Qdrant作为向量数据库,支持中文处理,提供三种模型部署方案(硅基流动/OpenAI/Ollama),适合想

2026-04-13 00:01:17 2807 63

原创 Linux权限详解:从入门到掌握

命令作用示例设置权限所有者全权,组和其他人读+执行给所有者加执行常用在脚本上修改所有者和组转移文件归属修改所属组让团队共享umask 027设置默认掩码新文件默认640设置粘滞位保护共享目录最小权限原则— 每个用户和进程只拥有完成工作所必需的最小权限。理解并善用这套机制,是保障系统安全的基础。希望这篇文章能帮你建立起对Linux权限的清晰认识。如果有任何疑问,欢迎在评论区留言讨论!

2026-04-08 00:19:50 3356 108

原创 2026年四月实测UU远程「无线副屏」功能,手机平板秒变第二块屏

网易UU远程推出「无线副屏」功能,可将手机/平板变为电脑第二屏幕。该功能支持跨网络公网直连,无需数据线或同一局域网,完全免费。使用简单:下载UU远程并登录同一账号,电脑端发起连接即可。突破传统副屏限制,适合办公、游戏、设计等多场景,相比同类产品更具优势。无需额外硬件,让闲置设备变身为实用扩展屏。

2026-04-03 21:26:48 19122 82

原创 封装红黑树实现 mymap 和 myset

摘要 本文分析了STL中map和set基于红黑树的实现原理,并展示了如何封装自定义的红黑树结构来实现类似功能。文章分为两部分:第一部分解析了SGI-STL中map和set如何复用同一棵红黑树,通过模板参数区分不同容器类型;第二部分详细演示了如何实现支持迭代器的红黑树框架,并在此基础上封装出mymap和myset。关键点包括:1) 红黑树的泛型设计,通过KeyOfT仿函数提取键值;2) map存储pair<Key,T>而set直接存储Key;3) 迭代器的实现原理,特别是operator++的中序

2026-03-30 23:35:55 17861 87

原创 UU 远程实测:功能无短板+十万悬赏

摘要:网易UU远程控制工具使用体验分享。文章介绍了这款免费工具在远程办公、文件传输、无线副屏等功能上的稳定表现,支持4K画质、跨平台操作且无广告弹窗。亮点包括便捷的远程协助模式、WOL远程开机功能,以及新推出的"赏金猎人计划"安全漏洞奖励活动。虽然存在部分功能入口较深、不支持Linux等小问题,但整体体验优于同类产品,适合有远程控制需求的用户尝试。

2026-03-27 14:01:26 13576 77

原创 保姆级教程:从零搭建你的第一个AI Agent

本文是一篇面向初学者的AI Agent开发教程,主要包含以下内容: AI Agent概述:介绍了AI Agent与普通LLM的区别,强调其具备自主规划、调用工具、迭代执行的ReAct循环机制,以及大脑(LLM)、工具(Tools)、记忆(Memory)三大核心组件。 环境准备:详细说明了如何创建Python虚拟环境、安装依赖库(OpenAI/Python-dotenv等),并初始化项目目录结构。 核心组件实现: 封装LLM客户端,支持多API提供商(OpenAI/DeepSeek/智谱GLM) 构建工具系统

2026-03-26 00:08:45 16343 90

原创 Linux 基础指令与权限管理完全指南

本文全面介绍Linux基础指令与权限管理,涵盖文件操作、内容查看、搜索查找、压缩解压等核心命令。主要内容包括:1) 环境准备与远程登录;2) 文件目录基础操作(ls、cd、mkdir等);3) 文件操作与内容查看(rm、cp、cat等);4) 搜索工具(find、grep);5) 压缩解压(tar、zip);6) 系统信息查询;7) 权限管理(用户切换、文件权限)。文章提供了详细命令语法、常用选项和实用示例,适合Linux初学者系统学习基础操作,也可作为开发者日常参考手册。

2026-03-24 22:57:40 3697 58

原创 保姆级教程:从零搭建AI系统权限控制系统

本文提供了一个3小时快速搭建AI系统权限控制的保姆级教程,旨在帮助开发者避免类似Meta的数据泄露事故。教程分为两个阶段:15分钟的环境准备(安装Python、PostgreSQL、Redis等)和60分钟的核心架构搭建。核心部分包括设计AI资产分类模型(如训练数据、模型参数等)和用户角色体系,通过敏感度级别自动计算基础权限,并建立完整的权限矩阵。该方案适用于各种规模的AI项目,提供实战可用的权限控制框架。

2026-03-22 17:13:45 2842 60

原创 C++手撕红黑树:从0到200行,拿下STL map底层核心

红黑树作为一种自平衡的二叉搜索树,凭借其红黑相间的结点颜色和四条核心规则,在计算机科学领域占据着举足轻重的地位。本文从红黑树的基本概念出发,深入剖析了其如何通过颜色约束实现“最长路径不超过最短路径2倍”的近似平衡特性,并对比分析了与AVL树的效率差异。

2026-03-19 19:54:04 1718 91

原创 OpenClaw深度解析:“数字龙虾”何以引爆AI Agent时代?安全危机与未来之战

你的电脑里可能也养着一只“数字龙虾”。这个让腾讯阿里字节疯狂入局、星标超27万的AI智能体,正从“效率神器”变成“失控内鬼”——删光邮件、植入后门、裸奔公网。本文还原OpenClaw爆火真相,告诉你如何安全地“养虾”,以及中国智能体时代的真正机会在哪。

2026-03-18 18:40:43 1570 44

原创 AVL树的插入、旋转与平衡检测 (C++实现)

本文介绍了AVL树的基本概念和C++实现方法。AVL树是一种自平衡二叉搜索树,通过平衡因子控制左右子树高度差不超过1,保证操作效率为O(logN)。文章详细讲解了AVL树的结构定义、插入操作流程和平衡因子更新规则,重点分析了四种旋转情况(左单旋、右单旋、左右双旋、右左双旋)的实现原理和代码。通过图示和代码示例,展示了如何通过旋转调整保持树的平衡性,确保插入、查找等操作的高效性。AVL树通过严格的平衡控制,有效解决了普通二叉搜索树可能退化为链表的问题。

2026-03-15 21:16:43 17672 56

原创 优选算法——滑动窗口2

本文介绍了滑动窗口算法在解决两类问题中的应用。首先,在1004题中,通过维护窗口内0的个数不超过k来找到最长连续1的子数组。其次,在1658题中,通过逆向思维将问题转化为寻找和为特定值的中间子数组,从而计算最小操作数。两题都展示了滑动窗口在连续子数组问题中的高效性,代码实现简洁明了,时间复杂度均为O(n)。滑动窗口是处理连续区间问题的有力工具,适用于满足特定条件的子数组查找。

2026-03-15 21:08:11 622 28

原创 C++STL详解:map与set的使用与底层原理map和set

本文介绍了C++ STL中的关联式容器map和set的使用与底层原理。首先区分了序列式容器和关联式容器的特点,指出map和set底层基于红黑树实现,具有O(log N)的增删查效率。重点讲解了set类的构造方法、迭代器遍历(默认升序)、增删查操作接口,并通过代码示例展示了insert、erase、find、count等常用方法的使用。此外还介绍了lower_bound和upper_bound的区间查询功能。这些关联式容器通过关键字访问元素,适合需要快速查找和有序存储的场景。

2026-03-14 20:19:41 4032 38

原创 优选算法——滑动窗口

本文介绍了两种滑动窗口算法的应用:长度最小的子数组和无重复字符的最长子串。第一部分讲解了如何寻找和≥target的最短连续子数组,通过双指针维护窗口,时间复杂度O(n)。第二部分重点解决最长无重复子串问题,推荐使用数组记录字符出现位置,同样实现O(n)时间复杂度。两种算法都通过滑动窗口优化了暴力解法,适用于大规模数据处理,并提供了详细的解题步骤和代码实现。

2026-03-14 20:08:20 551 23

原创 C++二叉搜索树(BST)全面解析:从原理到实现

二叉搜索树是一种高效的数据结构,具有排序和快速查找特性。它满足左子树所有节点值小于根节点,右子树所有节点值大于根节点的性质。文章详细介绍了二叉搜索树的基本概念、性能分析(最优O(logN),最差O(N))以及核心操作:插入、查找和删除的实现方法。删除操作根据节点子节点情况分为四种处理方式,包括直接删除和替换法删除。最后提供了二叉搜索树的C++实现代码,包含插入、中序遍历、查找和删除等基本功能。这种数据结构为后续学习更高效的平衡二叉搜索树(如AVL树和红黑树)奠定了基础。

2026-03-12 14:02:41 4191 61

原创 2026年2月远程控制软件全方位横向测评:UU远程综合实力冠军,优胜Todesk、向日葵

2026年主流远程控制软件横向测评显示,UU远程凭借卓越性能表现成为综合冠军。测试表明,UU远程在画质还原(支持4:4:4真彩模式)、流畅度(60FPS满帧)、延迟(<15ms)等方面全面领先ToDesk和向日葵。其文件传输功能免费开放完整能力,传输速度达10MB/s,且具备独家安全功能如自定义验证码和客户端安全锁。此外,UU远程界面简洁、操作便捷,支持免登录远程协助,大幅降低使用门槛。综合画质、流畅度、安全性和易用性,UU远程是当前远程办公和协作的最佳选择。

2026-02-28 15:12:58 12639 48

原创 优选算法——双指针专题 3.快乐数 4.盛水最多的容器

本文介绍了两种双指针算法的应用:快乐数问题和盛水容器问题。对于快乐数问题,通过快慢双指针判断数字变换过程是否进入循环或收敛到1。盛水容器问题则利用双指针从两端向中间移动,根据高度单调性计算最大容积。两种方法均通过双指针优化了时间复杂度,快乐数解法达到O(logn),盛水容器解法优化为O(n)。代码实现展示了如何运用双指针技巧高效解决这两类问题。

2026-02-14 23:54:39 695 35

原创 透彻理解C++多态:核心概念、底层实现与高频考点全解析

本文深入解析C++多态的核心概念与实现机制。多态分为编译时多态(函数重载、模板)和运行时多态(虚函数机制),重点阐述了运行时多态的实现条件:必须通过基类指针/引用调用虚函数,且派生类完成虚函数重写。文章详细讲解了虚函数重写的规则,包括协变、析构函数重写等特殊情况,并指出基类析构函数应设为虚函数以避免内存泄漏。最后介绍了C++11引入的override和final关键字,帮助开发者更安全地实现多态。通过典型代码示例和常见考点分析,全面揭示了多态在C++中的底层实现原理和应用技巧。

2026-02-14 23:51:31 956 58

原创 优选算法——双指针专题 1.移动零 2.复写零

摘要: 本文介绍了两种双指针算法应用:移动零和复写零。移动零问题通过划分数组模块,使用双指针将非零元素前移;复写零问题分两步处理,先定位需复写元素,再从后向前完成复写操作。两种方法都通过双指针高效解决了数组元素重排问题,避免了数据覆盖,时间复杂度均为O(n)。代码实现展示了如何用双指针技巧优化数组操作,适用于类似的数据处理场景。

2026-02-10 04:41:51 822 41

原创 深入理解C++继承:从基础概念到多继承实践

本文深入探讨了C++继承机制,从基础概念到多继承实践。首先介绍了继承的基本定义,通过Person、Student和Teacher类示例展示了继承消除代码冗余的优势。详细分析了三种继承方式(public/protected/private)对基类成员访问权限的影响,强调public继承最常用。文章还讲解了基类与派生类间的转换规则(派生类可"切片"赋值给基类指针/引用),以及继承中的隐藏规则(同名成员会隐藏基类成员)。最后通过栈继承vector的模板示例,展示了继承在实际开发中的应用。

2026-02-10 01:46:31 968 51

原创 C++ 模板进阶:非类型参数、特化与分离编译

本文介绍了C++模板的高级特性,主要包括三个方面:1)非类型模板参数的使用与限制;2)模板特化的概念与应用;3)模板分离编译的问题。非类型模板参数允许使用常量作为模板参数,但必须是编译期可确定的整型值。模板特化分为函数模板特化和类模板特化,后者又包含全特化和偏特化两种形式,用于处理特殊类型的特殊情况。最后分析了模板分离编译时可能出现的问题,由于模板需要完整的定义才能实例化,因此通常建议将模板实现放在头文件中。这些特性为编写更灵活、高效的模板代码提供了技术支持。

2026-02-05 23:55:22 736 54

原创 容器适配器深度解析:从STL的stack、queue到优先队列的底层实现

本文深入解析了C++ STL中的三种容器适配器:stack、queue和priority_queue。详细介绍了它们的基本特性、常用接口和使用方法,包括最小栈实现、逆波兰表达式求值等典型应用场景。同时提供了stack和queue的模拟实现代码,展示了容器适配器的底层设计原理。对于priority_queue,重点阐述了其作为堆结构的特点和使用方式。通过具体代码示例,帮助读者理解这些数据结构在实际编程中的应用,为高效算法实现提供了基础工具。

2026-02-03 23:33:03 930 51

原创 C++ STL list 容器详解:使用与模拟实现

本文详细介绍了C++ STL中的list容器及其模拟实现。list是带头结点的双向循环链表,支持O(1)时间复杂度的插入删除操作,但不支持随机访问。文章从list的基本使用入手,讲解了构造、迭代器、容量操作等接口,重点分析了迭代器失效问题。在模拟实现部分,详细展示了节点类、迭代器类的设计,以及list容器类的核心实现,包括类型定义、迭代器转换机制、构造函数和插入操作等关键功能。通过模板参数实现了const和非const迭代器的统一,支持前后遍历和箭头操作符访问成员。

2026-01-31 22:08:37 2091 52

原创 虚实交织的冒险:基于Rokid CXR-M SDK构建沉浸式AR实景寻宝系统

摘要 本文基于Rokid CXR-M SDK开发了一款沉浸式AR实景寻宝游戏系统。系统采用分层架构设计,包含用户层、应用逻辑层、SDK层和设备层,实现虚实融合的游戏体验。重点阐述了设备连接管理模块的实现,包括蓝牙/Wi-Fi双模式连接机制、状态回调处理及连接信息持久化策略。通过自定义场景交互设计和AI辅助功能,系统为玩家创造了在真实环境中探索虚拟宝藏的创新玩法,展示了AR技术在娱乐领域的应用潜力。

2025-11-26 20:00:17 1205 73

原创 Trait 对象与动态分发的权衡:Rust 多态性的代价与收益

Rust中的多态性机制存在两种主要实现方式:泛型静态分发和trait对象动态分发。前者通过单态化生成类型特化代码,具有零运行时开销但会导致代码膨胀;后者采用虚函数表实现运行时多态,牺牲部分性能换取灵活性。Trait对象通过胖指针和虚函数表实现动态分发,存在对象安全性约束和额外的指针间接开销。实践中应根据场景选择合适方案:性能敏感路径优先使用静态分发,需要异构集合或运行时多态时使用动态分发。常见的设计模式包括混合使用泛型API与内部trait对象存储,或采用枚举分发作为平衡方案。

2025-10-30 23:50:39 832 13

原创 Work-Stealing 调度算法:Rust 异步运行时的核心引擎

本文深入解析了Work-Stealing调度算法及其在Rust异步运行时中的应用。该算法通过让空闲线程从其他线程的本地队列窃取任务实现负载均衡,其核心是特殊设计的双端队列结构,使本地操作无锁而仅窃取时需同步。文章详细探讨了任务分配策略(LIFO/FIFO权衡)、随机窃取机制等关键设计决策,并以Tokio运行时为例,展示了工业级实现中的多级队列、lifo slot等优化技术。最后分析了内存同步原语的选择和动态线程池的实现原理,揭示了高性能调度器的底层机制。

2025-10-30 23:02:03 935 7

原创 HashMap 的哈希算法与冲突解决:深入 Rust 的高性能键值存储

本文深入解析了 Rust 标准库中 HashMap 的设计原理与实现策略。哈希表通过 SipHash 1-3 算法平衡安全性与性能,默认提供防御哈希洪水攻击的能力,同时支持自定义哈希算法。在冲突解决方面,采用开放寻址法中的 Robin Hood Hashing 变体,通过"劫富济贫"策略优化内存局部性和缓存性能。动态扩容机制在90.9%负载因子时触发,配合预分配策略提升效率。内存布局优化包括哈希缓存和连续存储设计,减少缓存未命中。标准库实现虽非线程安全,但可通过互斥锁、读写锁或分片策略实

2025-10-30 22:51:07 880 4

空空如也

空空如也

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

TA关注的人

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