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

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 指针 T*: 存储地址并可为 nullptr

    C++ SELF
    等级 39,课时 0
    解析基本的指针模型 T * 在 C++ 中:指针作为“地址值”,通过 nullptr 的初始化约束,取地址操作 & x,复制(复制的是地址,而不是对象)、与 nullptr 及彼此比较,以及指针类型化(为什么 int * 和 double * 不能混用)。
    可用
  • 解引用 * p 与 访问 p -> field

    C++ SELF
    等级 39,课时 1
    解析 C++ 中指针的机制:“地址” & x 与 值 x 有何不同,解引用 * p 实际做了什么,如何通过地址读取与修改数据,为什么在解引用前检查 nullptr 很重要,以及通过 p -> field 访问结构体字段的工作原理(等价于 ( * p ) . field)。最后——一组常见错误以及在处理对象生命周期时的注意点。
    可用
  • 指针作为参数:nullable 设计

    C++ SELF
    等级 39,课时 2
    我们来分析为什么在函数中传递指针 T*、如何把函数签名读作契约,以及为什么包含 nullptr 的分支不是“漏洞”,而是一种诚实的设计。比较 nullable 输入和必须指针(通过检查或 assert),学习如何编写带有状态 bool 和 out 参数的 try_* 函数,并通过一个联系人簿的小练习来巩固所有内容。
    可用
  • 指针的危险:未初始化和悬空指针

    C++ SELF
    等级 39,课时 3
    我们讲解 C++ 中指针的两类最狡猾的 bug:未初始化的 T *(内部是“垃圾”)和悬空的( dangling)——当地址比对象存活时间更长。演示为什么检查 nullptr 并不能解决所有问题,如何轻易“破坏” std::vector 元素的地址,并通过一个包含联系人查找和使用 assert 保护契约的迷你应用 ContactBook 来巩固安全使用指针的规则。
    可用
  • T& 作为别名:引用必须引用一个对象

    C++ SELF
    等级 39,课时 4
    我们来讲解为什么 C++ 中的引用 T& 是别名(“第二个名字”),而不是独立的对象:引用必须立即初始化,不存在 nullptr 引用,也不存在通过 = 的“重新绑定”。在实践中我们看一下对 std::vector 元素的拷贝与引用的区别,澄清表达式 r = b; 的含义(那是对对象的赋值,而不是改变绑定),并汇总常见错误——从“空引用”到悬垂引用。
    可用
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