AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
C++
C++
级别 8
如何知道我能做到?
C++ SELF
等级 8,
课时 0
在这篇文章中,你将了解为什么编程对每个人来说都可达到,作为程序员的职业带来哪些优势,CodeGym 的创新教学方法有何不同,以及为什么实践比理论更重要。材料会激励你相信自己的能力并开始走向 IT 的道路!
Signed vs unsigned
C++ SELF
等级 8,
课时 1
在本讲中我们讨论 C++ 中两类整数“契约”:有符号类型(
signed
,例如
int
)和无符号类型(
unsigned
)。我们会谈到如何有意义地选择类型,为什么
-
1
在转换为
unsigned
时会变成一个很大的数,花括号
{}
如何帮助捕获危险的初始化,以及在输入、比较和算术中常见的错误有哪些。
std::size_t — 为什么 size() 返回 size_t
C++ SELF
等级 8,
课时 2
在本讲中我们讨论 C++ 中的
std::size_t
是什么,以及为什么标准容器(例如
std::string
)的
size()
方法返回它。我们会讲到“长度 vs 索引”的区别、
int
与
std::size_t
比较的陷阱、正确的双步索引检查模板以及混合 signed/unsigned 时的典型错误。
深入比较陷阱:i < size()
C++ SELF
等级 8,
课时 3
在本讲中我们解析 C++ 中的“比较陷阱”:为什么像
i
<
size()
这样的表达式会因为
signed
/
unsigned
的隐式转换而表现出意想不到的行为,什么是
std::size_t
,负的
int
如何变成一个很大的正数,以及如何在不依赖“魔法”和隐藏 bug 的情况下编写安全的索引检查(包括来自用户输入的情况)。
std::numeric_limits:类型边界与溢出
C++ SELF
等级 8,
课时 4
在本讲中我们讲解在
C++
中如何通过
std::numeric_limits
获取数值类型的最小值和最大值,带符号
signed
与无符号
unsigned
在溢出时的差异,为什么
int
的溢出是危险区域(甚至会导致
UB
),以及在实际示例中如何在算术运算前进行边界检查。
安全的循环:range-for、迭代器、std::ssize
C++ SELF
等级 8,
课时 5
在本讲中我们讨论在
C++
中安全遍历容器的方法:当不需要索引时使用
range-for
,当需要位置编号时使用索引循环配合
std::size_t
,以及使用迭代器(
begin()
/
end()
),还讨论了带有无符号索引的反向循环问题。单独介绍
std::ssize
作为获取有符号长度的便捷方法,并构建一个小例子“TextScope”,演示用三种风格遍历同一文本。
产品创造:现代 IT 产品如何诞生
C++ SELF
等级 8,
课时 6
在本次讲座中,您将了解现代 IT 产品实际上如何被创造:为什么开发是不断的变更,发布流程如何运作,为什么只有在 production 上运行的代码才有价值,以及您的代码从编写到为用户带来价值会经历哪些阶段。所有内容都配有示例、类比和来自行业的真实故事。
Please enable JavaScript to continue using this application.