CodeGym
AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • std::filesystem::path

    C++ SELF
    等级 64,课时 0
    我们来分析为什么把路径“当作字符串”保存会引发 bug,以及类型 std::filesystem::path 如何通过 operator/ 安全地从部分构造路径、提取组件( parent_path()、 filename()、 stem()、 extension())、通过 replace_extension() 修改扩展名并通过 string() 获得字符串表示。最后 — 给出一个面向 NoteVault 的实用示例和典型错误清单。
    可用
  • 路径检查: std::filesystem 中的判断

    C++ SELF
    等级 64,课时 1
    我们来解析为什么路径( fs::path)并不等同于文件,并学习如何向文件系统提出正确的问题:对象是否存在( fs::exists())、它是否是普通文件( fs::is_regular_file())还是目录( fs::is_directory())。通过一系列检查模式巩固分支逻辑,构建一个小型工具“FS-检查器”,在 mermaid 上添加流程图,并讨论新手常见错误。
    可用
  • std::filesystem 操作

    C++ SELF
    等级 64,课时 2
    讲解 C++ 中 std::filesystem 的基础“实战”操作:如何安全地创建目录( create_directories)、复制文件( copy_file 和 copy)、重命名/移动( rename)和删除( remove),以及如何理解它们的契约:返回的 bool 表示什么、何处开始出现运行时错误。最后我们会组装一个小工具 ProjectVault 并记录处理路径时的典型错误。
    可用
  • error_code‑overload

    C++ SELF
    等级 64,课时 3
    解析 std::filesystem 中的两种 API 风格:“抛出异常”的(通过异常 std::filesystem::filesystem_error)和“不抛出”的(通过带有 std::error_code 的重载)。学习如何有纪律地使用 ec,区分“正常的 false”与“错误”,并构建一个小工具 NoteVault,在那里文件不存在不是灾难,而是正常的逻辑分支。
    可用
  • 目录遍历

    C++ SELF
    等级 64,课时 4
    讲解在 C++ 中如何通过 std::filesystem 操作文件系统: fs::directory_iterator 与 fs::recursive_directory_iterator 有何不同,遍历元素 fs::directory_entry 的结构如何,如何过滤文件和目录,以及如何使用 std::error_code 和 increment(ec) 编写“健壮”的无异常遍历。最后我们会组装一个小工具 DirInspector 并分析新手常犯的错误。
    可用
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym