- 博客(184)
- 资源 (3)
- 收藏
- 关注
原创 我写了一个支持MCP服务的大模型聊天工具
FishMind不仅支持主流大模型API,更集成了MCP服务支持,让您能够更灵活地连接和管理AI服务。作为一款桌面应用,它同时运行在Windows、macOS和Linux上,提供统一的用户体验。如果您对大模型应用感兴趣,希望体验更灵活的AI交互方式,欢迎访问我们的项目主页:https://github.com/fishcode2025/fishmind。我很高兴向大家介绍我最新开发的开源项目——FishMind,这是一款跨平台AI聊天客户端,特别支持MCP服务。期待大家的关注与反馈!
2025-03-19 13:45:27
154
原创 Rust中的Trait与Trait Bounds
在《西游记》中,每个角色都有独特的技能。例如,孙悟空会七十二变,猪八戒会水遁术,沙僧则擅长使用降魔杖。我们可以将这些技能抽象为 Rust 中的 trait。// 定义一个trait,表示“会飞的能力”// 孙悟空实现了Fly traitprintln!("孙悟空驾筋斗云,一跃冲天!");// 猪八戒也实现了Fly traitprintln!("猪八戒施展水遁术,化作一道清烟飞走!");// 定义一个trait,表示“会灭火的能力”// 孙悟空实现了Extinguish trait。
2025-02-19 14:16:48
678
原创 Rust 再谈泛型
字符串字面量的欺骗性:它们具有'static生命周期,可能掩盖真实问题测试生命周期问题的技巧:使用String类型代替字符串字面量确保被引用的数据确实会离开作用域编译器的火眼金睛:即使表面看起来没问题,实际内存安全问题仍会被拦截
2025-02-04 21:42:08
581
原创 Rust泛型:代码界的变形金刚
Rust泛型就像编程界的瑞士军刀🔪: - **代码复用** → 一把工具搞定N种任务 - **类型安全** → 每个刀刃都有安全锁 - **零成本抽象** → 变身不消耗额外能量
2025-02-04 21:11:51
293
原创 Rust错误处理:从灭火器到核按钮的生存指南
在Rust的平行宇宙里,错误分为两种人格:panic! → 核按钮💣(不可恢复,全系统警报)Result → 灭火器🧯(可控制,局部处理)
2025-02-04 20:55:10
642
原创 Rust HashMap :当储物袋遇上物品清单
记住:在Rust的魔法世界里,HashMap不是简单的储物袋,而是需要签订契约的次元空间。现在拿起你的法杖(键盘),去创造属于自己的哈希映射魔法吧!:只有在没有对应咒语时才记录新咒语。在Rust的奇幻世界里,:用特定咒语召唤对应物品。:往魔法书里记录新咒语。:清点魔法口袋所有物品。
2025-02-04 20:32:07
651
原创 Rust字符串奇幻漂流:当严谨工程师遇上表情包大军
在Rust的世界里,字符串就像会变形的机器人🤖,平时以两种形态示人:- **String**:可扩容的集装箱,能装载任意货物- **&str**:固定展览柜,只展示不修改
2025-02-04 20:15:37
289
原创 火锅遇见 Rust Vector:一场香辣的内存管理之旅 [特殊字符]
特性火锅比喻内存表现动态大小自动伸缩的锅具堆分配,自动扩容相同类型统一汤底连续内存存储索引访问直接夹菜O(1) 时间复杂度安全访问用漏勺找食材返回 Option 类型枚举存储荤素搭配枚举变体统一大小迭代器传送带取菜高效遍历容量预分配提前预定座位减少内存分配次数下次吃火锅时,不妨想想 Rust 的 Vector:它既保持了 C++ 的灵活性,又有 Python 的便利性,还自带米其林级别的安全检查。毕竟。
2025-02-04 17:44:10
851
原创 Rust模块系统完全指南:构建可维护的代码结构
Rust的模块系统通过层次化的代码组织、精细的可见性控制和清晰的路径管理,帮助开发者构建高内聚低耦合的代码库。本文将用7个示例带你全面掌握模块系统的核心用法。
2025-02-04 17:15:22
540
原创 Rust中的match控制流:枚举的强大搭档
在Rust中,`match`是一种强大的控制流结构,特别适合与枚举(`enum`)一起使用。`match`允许你根据枚举的不同变体执行不同的代码逻辑,并且编译器会强制检查是否覆盖了所有可能的情况,从而避免运行时错误。本文将详细介绍`match`的用法,并通过具体示例展示如何用它处理枚举。
2025-02-03 21:48:33
291
原创 Rust枚举(Enum)完全指南:用类型安全表达多样性
枚举(Enum)是Rust类型系统的核心特性之一,它不仅能够表示简单的选项集合,还能携带复杂数据,配合模式匹配实现强大的逻辑控制。本文将通过具体示例,深入解析Rust枚举的完整用法。
2025-02-03 21:13:58
817
原创 Rust结构体方法语法:让数据拥有行为
结构体(struct)不仅是数据的容器,还能通过方法(method)定义专属行为。Rust通过`impl`块将数据与操作紧密结合,配合`derive(Debug)`实现便捷调试。本文通过实际案例,带你探索结构体方法的奥秘。
2025-02-03 20:55:00
737
原创 Rust中的结构体(Struct):数据组织的基石
结构体(struct)是Rust中定义自定义数据类型的基础工具,它允许你将多个相关的值组合成一个有意义的整体。通过结构体,我们可以创建出高度结构化、类型安全且易于维护的代码。本文将通过具体示例,详细介绍Rust结构体的核心用法。
2025-02-03 20:36:52
515
原创 Rust `struct`和 `enum`番外《哪吒、白蛇传?》
struct是乾坤圈把散落四处的属性(名字、威力、状态)圈在一起,让数据不再"藕霸"(藕做的霸总,一碰就散)enum是风火轮载着你上天入地处理各种情况,少一个分支都飞不起来!合体技 = 数据结构の完全体当struct遇上enum,就像哪吒开启三头六臂——既能稳守数据类型,又能横扫所有可能性!struct镇乾坤,enum照妖镜,Rust 大道成!(此时一道天雷劈下,你的代码终于通过了编译…)
2025-02-03 20:17:16
716
原创 为什么在Rust中要用Struct和Enum组织数据?
Rust是一门注重内存安全和高效的系统编程语言,其类型系统的设计哲学强调明确性和安全性。struct(结构体)和enum(枚举)是Rust中组织数据的核心工具,它们不仅能让代码更易读,还能通过编译器的静态检查避免运行时错误。本文将通过具体示例,深入探讨为什么在Rust中必须使用struct和enum来管理数据。
2025-02-03 17:22:42
1074
原创 Rust中的切片类型:灵活的数据视图
Rust的切片类型提供了一种灵活且高效的方式来操作数据,尤其是字符串和数组。通过切片,你可以访问集合的一部分,而不需要复制数据或获取所有权。字符串切片和数组切片是Rust中常用的工具,它们使得代码更加简洁和安全。希望本文能帮助你更好地理解Rust中的切片类型。如果你对Rust的其他特性感兴趣,建议继续深入学习所有权、借用和生命周期等概念。切片是Rust内存安全模型的重要组成部分,掌握它将为你的Rust编程之旅打下坚实的基础!
2025-02-03 16:37:32
568
原创 Rust场景示例:为什么要使用切片类型
切片类型是 Rust 内存安全模型的关键组成部分。它通过提供对数据的“视图”而非所有权,使得代码更简洁、更安全、更高效。在上述示例中,使用切片避免了手动管理索引的复杂性,同时通过编译器的静态检查保障了内存安全。这种设计是 Rust 能够在系统编程中兼顾性能和安全的基石之一。
2025-02-03 16:32:29
459
原创 Rust中变量【引用】与【借用】规则
Rust的引用和借用机制是其内存安全的核心。通过引用,我们可以在不转移所有权的情况下访问数据;通过借用规则,Rust在编译时避免了数据竞争和悬垂引用。这些特性使得Rust在系统编程领域表现出色,同时也为开发者提供了强大的工具来编写安全、高效的代码。希望本文能帮助你更好地理解Rust中的引用和借用。如果你对Rust的所有权系统感兴趣,建议继续深入学习Rust的其他相关概念,如生命周期和所有权转移。
2025-02-03 16:02:36
1096
原创 Rust 的基本类型有哪些,他们存在堆上还是栈上,是否可以COPY?
存储单个 Unicode 字符,占 4 字节(UTF-32)。,因此它们在赋值或传递时不会发生所有权转移。✅ 由于整数是固定大小的标量,它们通常存储在。✅ 是的,所有整数类型都实现了。本身(指针、长度、容量)存储在。(因为它的大小在编译时已知)。这样的引用本身实现了。Rust 的基本类型中,上,但字符串内容存储在。上,指向的字符串可能在。❌ 切片本身是引用(
2025-02-02 16:18:17
1177
原创 Rust 所有权特性详解
栈内存后进先出(LIFO)的数据结构。分配和释放速度快。用于存储固定大小的数据(如基本类型)。堆内存动态分配的内存区域。分配和释放速度较慢。用于存储大小可变或生命周期不确定的数据(如StringVec堆内存与栈内存:区分数据的存储位置。所有权规则:确保每个值只有一个所有者。作用域:决定变量的生命周期。String类型:动态分配的字符串。内存分配:自动管理堆内存。所有权移动:转移所有权时原始变量失效。Clone:显式复制堆数据。栈内存的Copy:基本类型赋值时复制值。
2025-02-02 16:16:21
1051
原创 Rust 控制流语法详解
条件判断ifelse ifelse。循环loopwhilefor。高级特性:在if中使用let、从loop返回值、使用标签跳出多重循环。通过合理使用这些语法,可以编写出高效且易于维护的 Rust 代码。无论是简单的脚本还是复杂的系统,Rust 的控制流都能满足多样化的需求。
2025-02-02 15:33:18
981
原创 Rust 中的注释使用指南
行注释:以//开头,适合简短的解释。块注释:以/* ... */包裹,适合多行注释。文档注释:以///或/** ... */开头,用于生成 HTML 文档。通过合理使用注释,可以提高代码的可读性和可维护性,同时为其他开发者提供清晰的文档支持。无论是小型脚本还是大型项目,注释都是 Rust 开发中的重要工具。
2025-02-02 15:21:04
454
原创 Rust 函数使用详解
函数签名:定义函数名称、参数和返回值。函数参数:支持类型注解,确保类型安全。语句与表达式:语句执行操作,表达式返回值。函数返回值:通过最后一个表达式隐式返回,或使用return关键字显式返回。通过合理使用这些特性,可以编写出高效且易于维护的 Rust 代码。无论是小型工具还是大型系统,Rust 的函数都能满足多样化的需求。
2025-02-02 15:04:53
694
原创 Rust 数据类型详解:Scalar 与 Compound 类型
Scalar 类型:包括整数、浮点数、布尔值和字符,适合表示单个值。Compound 类型:包括元组和数组,适合组合多个值。通过合理使用这些类型,可以编写出高效且安全的 Rust 程序。无论是系统编程还是应用开发,Rust 的类型系统都能满足多样化的需求。
2025-02-02 14:49:20
757
原创 Rust 变量特性:不可变、和常量的区别、 Shadowing
Rust 的变量系统设计精巧,通过以下特性提升了代码的安全性和灵活性:8.可变性:默认不可变,显式声明可变性。9.变量与常量的区别:常量是编译时确定的不可变值,生命周期贯穿整个程序。10.Shadowing:允许在同一作用域内重用变量名,支持类型和值的灵活变化。这些特性使得 Rust 在保证内存安全的同时,提供了强大的表达能力。无论是系统编程还是应用开发,Rust 的变量系统都能满足多样化的需求。
2025-02-02 14:20:20
634
原创 实践Rust:编写一个猜数字游戏
Cargo:管理项目和依赖。let:声明变量。match:模式匹配。method 方法:与类型关联的函数。fn 函数:可重用的代码块。外部crate:引入第三方库。希望这个小项目能帮助你更好地理解Rust的基础知识。接下来,你可以尝试扩展这个游戏,比如增加难度、记录猜测次数等。🚀参考资源Rust官方猜数字游戏教程Rust官方文档。
2025-02-01 19:33:21
1556
5
原创 初识Cargo:Rust的强大构建工具与包管理器
Cargo是Rust的构建工具和包管理器,类似于其他语言中的工具(如Node.js的npm、Python的pip)。创建和管理项目:快速初始化新项目,生成标准目录结构。编译代码:自动编译项目并生成可执行文件。管理依赖:轻松添加、更新和删除第三方库。运行测试:一键运行项目中的单元测试和集成测试。生成文档:自动生成项目的API文档。Cargo是Rust开发的核心工具,几乎每个Rust项目都会用到它。Cargo是Rust开发中不可或缺的工具,它让项目的创建、编译、测试和依赖管理变得非常简单。
2025-02-01 18:18:49
1486
原创 如何在Windows、Linux和macOS上安装Rust并完成Hello World
如何在Windows、Linux和macOS上安装Rust。如何编写、编译和运行一个简单的“Hello, World!”程序。如何使用Cargo管理Rust项目。接下来,你可以继续探索Rust的更多特性,比如变量、函数、所有权等。Rust的学习曲线可能有点陡峭,但它的强大功能和安全性绝对值得你投入时间!如果你有任何问题或需要进一步的帮助,欢迎在评论区留言。🚀参考资源Rust官方安装指南Rust官方文档。
2025-02-01 17:56:08
1323
原创 什么是Rust?它有什么特点?为什么要学习Rust?
如果你是一名编程初学者,或者已经有一些编程经验但对Rust感兴趣,那么这篇文章就是为你准备的!我们将用简单易懂的语言,带你了解Rust是什么、它有什么独特之处,以及为什么你应该学习它。Rust是一门现代的系统编程语言,由Mozilla于2010年首次发布。它的目标是解决传统系统编程语言(如C和C++)中的一些常见问题,比如内存安全问题、并发编程的复杂性等。Rust的设计理念是安全、并发和性能,同时保持开发者的生产力。简单来说,Rust是一门既高效又安全的编程语言,适合开发从操作系统到Web应用的各种软件。
2025-02-01 17:48:07
1382
原创 使用现有的 bitnami/postgresql:16.3.0 镜像安装pg_roaringbitmap插件
你应该能看到 roaringbitmap 在已安装的扩展列表中。
2024-08-14 10:26:22
609
1
原创 Centos openssh CVE-2024-6378 漏洞升级
Openssh CVE-2024-6378 漏洞需要升级openssh版本,此次漏洞影响范围>=8.5P1,
2024-07-04 14:04:27
880
原创 Docker: 使用容器化数据库
自定义数据库镜像允许您在基础数据库镜像上添加配置、脚本和初始数据,以便快速部署您的数据库。Dockerfile 提供了一种描述如何构建镜像的简单语法。在构建过程中,您可以添加配置文件、创建数据库和表,甚至插入初始数据。此命令告诉 Docker 使用当前目录中的 Dockerfile 构建镜像,并将其标记为。此时,您的容器将根据 Dockerfile 中的指示运行 MySQL,并使用指定的配置和初始数据进行初始化。本指南演示了如何使用 Docker 运行、管理和定制容器化数据库。
2024-06-26 22:02:15
1630
原创 Docker:使用 JupyterLab 进行数据科学
JupyterLab 是一个开源应用程序,围绕计算笔记本文档的概念构建。它支持代码共享与执行、数据处理和可视化,并提供一系列用于创建图表的交互功能。您可以使用 Docker 创建自己的 JupyterLab 环境并将其构建为镜像。通过构建自己的镜像,您可以使用所需的软件包和工具自定义 JupyterLab 环境,并确保其在不同部署中的一致性和可重现性。构建自己的镜像还使得与他人共享 JupyterLab 环境或将其用作进一步开发的基础更加容易。
2024-06-26 21:58:34
1899
原创 PHP 语言特定指南
本指南将教您如何使用 Docker 创建容器化的 PHP 应用程序。完成 PHP 语言特定指南后,您应该能够根据本指南提供的示例和说明容器化您自己的 PHP 应用程序。
2024-06-25 22:03:01
583
原创 Rust 语言特定指南
本指南将教您如何使用 Docker 创建容器化的 Rust 应用程序。完成 Rust 模块后,您应该能够根据本指南提供的示例和说明容器化您自己的 Rust 应用程序。
2024-06-25 21:57:53
408
原创 C++语言特定指南
本指南将教您如何使用 Docker 创建容器化的 C++ 应用程序。完成 C++ 入门模块后,您应该能够根据本指南提供的示例和说明容器化您自己的 C++ 应用程序。
2024-06-25 21:55:43
453
原创 .NET 语言特定指南
本指南将教您如何使用 Docker 创建容器化的 .NET 应用程序。完成 .NET 入门模块后,您应该能够根据本指南提供的示例和说明容器化您自己的 .NET 应用程序。
2024-06-25 21:54:01
665
原创 Java 语言特定指南
本 Java 入门指南将教您如何使用 Docker 创建一个容器化的 Spring Boot 应用程序。完成 Java 入门模块后,您应该能够根据本指南提供的示例和说明来容器化您自己的 Java 应用程序。
2024-06-25 21:47:17
869
docker手册-中文版
2014-09-03
Horland-运维监控系统
2014-07-09
合伙吃饭账单管理系统
2014-07-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人