AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
C++
C++
级别 7
我是最棒的
C++ SELF
等级 7,
课时 0
在这篇励志文章中,你将了解为什么通往成功的道路对每个人都是独一无二的,如何在不牺牲重要事物的情况下选择自己的策略,以及为什么不仅要努力工作,还要聪明地工作。材料将帮助你从新的角度看待竞争、勤奋和文化观念。
初始化形式:=、()、{} 与 narrowing
C++ SELF
等级 7,
课时 1
在本讲座中我们讨论在 C++ 中如何用不同的初始化形式为变量设定初始值:通过
=
的拷贝初始化、通过
()
的直接初始化,以及通过
{}
的列表初始化。我们会理解为什么
{}
有助于在编译期捕获危险的收窄转换(narrowing),看到典型陷阱例如
most vexing parse
,并构建一个带有谨慎数字初始化的 MiniCheck 小示例。
const
与不可变性契约
C++ SELF
等级 7,
课时 2
在本讲中我们讨论为什么在 C++ 中需要
const
,以及它如何将“不会修改”的承诺变成编译器可检查的规则。我们会谈到为什么
const
需要初始化,它如何与不同的初始化风格(
=
、
()
、
{}
)配合使用,它与“编译期已知的值”(引出到
constexpr
)有什么区别,以及在实践中
const
在何处特别提高可读性和可靠性(值快照、对抗魔法数字、“收银台”小示例)。最后 — 常见错误以及如何避免它们。
constexpr — 编译期计算
C++ SELF
等级 7,
课时 3
我们来解析在 C++ 中什么是
constexpr
:区分“编译世界”和“运行世界”、为什么
const
与
constexpr
是不同的契约、哪些表达式被视为常量、
constexpr
在实际代码中在哪些场景有用,以及初学者常犯的错误(例如,尝试从
std::cin
获得
constexpr
)。包含示意图和示例。
static_cast:为什么应尽量避免 C‑style cast
C++ SELF
等级 7,
课时 4
在本讲中我们解析 C++ 中的显式与隐式类型转换:为什么表达式
int
/
int
会产生整数结果,如何阅读并使用
static_cast
,“静默”转换有何危险,
static_cast
<
int
> 会如何截断,以及为什么在现代 C++ 中应避免 C 风格转换(
(
T
)
expr
)和 function 风格转换(
T
(
expr
)double
的处理,以及
char
↔
int
的转换。
C++ 中的字面量和后缀:数字、字符与转义
C++ SELF
等级 7,
课时 5
在本讲中我们讨论什么是 C++ 字面量以及为什么它们总有类型:默认的整数字面量与浮点字面量,控制整型行为的后缀
u
和
ll
,
'A'
与
"A"
的区别,以及转义序列(
\n
,
\t
,
\\
,
\"
)的实践用法。最后 — 一个小应用 “MiniCheck”、mermaid 流程图以及初学者常见错误。
程序员之路
C++ SELF
等级 7,
课时 6
我们讲解开发者的职业等级、创建软件产品的方法演进,以及为什么现代工程师更常集成现成组件和云服务,而不是从零开始编写所有内容。
Please enable JavaScript to continue using this application.