这门课在补哪一块能力缺口

iOS 开发岗位的面试里,C/C++ 几乎是绕不开的硬骨头:很多候选人写过多年 Objective-C,碰到指针、const、多态、虚函数这些底层概念时反而含糊,因为日常开发被封装得太好。这门课就专门针对这一段断层,把 iOS 面试高频问到的 C/C++ 题目集中讲一遍,避免你背了一堆 UI 知识却答不上“指针的本质”“const 指针与 const 对象的区别”。它的定位是体系课里的一个细分专题,不是从零学 C 的入门课。

适合什么基础的人看

适合已经能独立写 iOS 应用、用过 Objective-C,准备跳槽或转岗到中高级 iOS 岗位的人。如果你只用过 Swift,也可以看,但建议先回顾一下 C 的基本语法,比如变量、函数声明、结构体。完全没碰过 C 的纯新手不太建议直接上手,会跟不上指针和内存地址的讨论。学习方式是配合资料包里的视频逐节看,每节都不长,十几到三十分钟,适合下班后集中刷。

建议先看哪几块、怎么练

建议按目录顺序推进,但可以把精力多放在三块:第一块是前 5 课,把指针和 const 的基础打牢,包括 const 修饰普通变量、const 指针、指向 const 的指针这几组容易混的概念,结合 3、4、5 课里的面试题自己动手写一遍代码确认行为;第二块是 6、7、8 课,专攻 C++ 的多态和虚函数,理解 vtable、动态绑定、子类构造时基类部分的初始化顺序,最好能在 Xcode 里写个小例子跑一下验证;第三块是 9、10、11 课,从“子类里基类部分如何创建”过渡到指针和二级指针的实际用法,把内存模型在纸上画出来。每学完一节,先暂停自己复述答案,再继续,比被动听有效得多。

学完能独立做什么

学完之后,面对 iOS 面试官抛出的 C/C++ 题目,能比较有底气地讲清指针和 const 的区别、写出多态和虚函数的内存解释、解释 Objective-C 里 id、Class 这些指针类型的底层含义,也能看懂 SDK 源码或开源组件里涉及 C/C++ 的部分,比如 Block 的实现、runtime 的部分结构。配合你自己的 iOS 项目经验,面试时不容易被“底层原理”这一轮卡住。

资料怎么配合练习

资料包里是按章节切的视频,建议搭配两件事一起练:一是把每节讲到的面试题在 Xcode 里手敲一遍,区分编译报错和运行结果;二是自己整理一份错题笔记,把每个概念写成两三句自己的话,隔几天回看。看完视频后,可以再去 LeetCode 上挑几道 C 语言的指针题强化手感,也可以翻一下 Objective-C 官方文档里关于内存管理的章节,对照本课讲的指针部分加深理解。视频只是输入,真正能答出面试题的是你自己写代码和复述的过程。

课程目录

1 1.面试官常问的指针问题有那些? (21:03)
2 2.指针的本质是什么? (25:59)
3 3.C语言中指针面试题分析 (19:30)
4 4.C语言面试之const变量 (13:16)
5 5.C语言面试之const指针 (24:36)
6 6.C++面试之const对象 (28:37)
7 7.ios面试之你是如何理解C++和OC里的多态的? (14:43)
8 8.你是如何理解C++里面的虚函数的? (25:23)
9 9.ios面试之C++子类里基类部分是如何创建的? (30:19)
10 10.ios面试之如何使用指针 (13:28)
11 11.ios面试之如何使用二级指针 (23:18)