结束语 终点已达,行程还要继续

你好,我是吴咏炜。

从去年八月底极客时间第一次找我到现在,一眨眼居然差不多半年了,时间过得也真是飞快。终于结束了这段旅程,感到轻松,感到欣然,也感到有丝丝遗憾。

轻松,是因为终于结束了被人“追债”的日子😝。记得最初我们的计划是一周拿出十几小时的时间来写专栏,但从实际结果来看,这更接近我写一篇文章所需要的时间。“后果”就是我的业余时间近乎全部搭进去了,即使我的家庭领导(你懂的),已经赦免了我的家务工作,但到了专栏更新后期,熬夜突击也在所难免。

欣然,是因为我发现写作这个过程不仅对他人有益,对我自己的知识体系也是一个极好的梳理。写作的原初目的当然是分享,看到有人能觉得我写的东西可以带来帮助,这就是一件很快乐的事。同时,写作也是写给自己,可以将知识形式化、系统化、具象化。在这个过程中,很容易发现自己的问题:我也修正了自己的一些错误的见解,部分靠自己的再学习,部分靠他人的反馈。你也应该试试这个方法,多输出、多分享,在交流中共同进步。

遗憾,是因为这个专栏我再努力,也只能覆盖 C++ 的部分重要特性。C++ 的功能要写全,恐怕得用上至少 100 讲;如果要做到对初学者友好,200 讲够不够都是个问题。但就目前的专栏定位来讲,也只能是这种以点带面的方式,引出一些最重要的 C++ 学习方向了……

综合来说,对于最后的成品,我还是满意的。它可以称得上我 2019-2020 的跨年心血之作——里面的内容,从文字到代码到插图,都凝结着我的辛勤和汗水。

虽然不能保证我讲述的内容完全没有错误,但我能担保内容中没有任何我已知的错误。虽然不能担保我提供的代码完全没有 bug,但我至少可以保证,我写代码和写正文是一样的正式和规范(甚至更认真),并且但凡略长的代码,我都已经仔仔细细地测试过。事实上,在查阅资料的过程中,我还看到了一些 C++ 之父的代码错误——显然,由于这种或那种的原因,他没有测试他的所有代码——而即使 C++ 之父,也做不到直接写下的代码没有 bug😈。

虽然之前已经说过,但在结束之前,我还是要再重复强调一下,如果学习专栏时遇到问题,该怎么办。

由于定位和篇幅,你不可能通过这个专栏从无到有地学会 C++,也不可能通过这个专栏从了解 C++ 变成精通 C++——后者恐怕也没有专栏能做得到。我能做到的,是给你一些指引,给你一些方向,给你分享我在这个方向上的心得和你可以进一步学习的资料。正如我在 [开篇词] 里说的,我会教你的,是让你知道某个 C++ 的功能为什么存在和应该在什么情况下使用——这是目前外面的参考资料中比较缺的。真正的熟练掌握,靠的还是你自己。“师父领进门,修行在自身。”前人不我欺也。

此外,如果你觉得有没完全看明白的地方,你应该反复看,或者过几天再重新看。根据目前的评论我发现,读漏我正文内容的同学还是有一些的——这应该是读第一遍没完全吃透的结果。这个问题不怨你,也不怨我,因为这是学习过程中的自然现象。如果一本教科书,有人读一遍之后可以全部掌握其中的内容,那要么是内容太简单了,要么他是个天才。对于大部分不是天才的我们,需要认识到这是个正常的学习过程,无需担忧和焦虑。我们需要的只是努力前行——旅程就是一个脚步一个脚步地走下来的。

最后的最后,感谢你们,我的读者!不管是你们的鼓励,还是你们的批评,都是我前进的动力,激励我把这个专栏写得更好。即便是你们提的问题,也让我明白了哪些地方我没有阐释得足够透彻。希望如果能有下次机会,我能写得更完美一点,来回报你们对我的信任和对 C++ 的热爱。

不知道为什么,写 C++ 的时候,我常常想起这首老歌:

我来唱一首歌古老的那首歌
我轻轻地唱你慢慢地和

C++ 虽然有点古老了,但在新世纪,它仍然给人历久弥新的感觉。为了理想,历经艰苦的日子是必须的,但希望我们不必哭泣,希望我们都可以欢笑着实现自己的梦想。

哦,对了,虽然 C++ 不是纯面向对象的语言,但在某些特殊的日子里,比如今天,我还是要赞美面向对象一下😂。纯代码的人生还是不完备的。所以,祝一句,情人节快乐。

我是吴咏炜,我们后会有期!

精选留言(15)
  • even 👍(13) 💬(1)

    看了你的专栏,我确认我的C++水平还很低

    2020-02-25

  • EricHu 👍(12) 💬(1)

    吴老师,最后请教一个问题,C++程序运行崩溃后,该程序内对象的析构函数会被调用吗?

    2020-02-18

  • milley 👍(8) 💬(1)

    非常感谢老师的付出,我本人通读了一遍专栏,感觉太有料了。打算第二遍再更加认真的阅读加实操。节日快乐!

    2020-02-14

  • 黄骏 👍(2) 💬(1)

    专栏结束2年后,项目开发要用c++17/20,感觉比刚开始看的时候一头雾水要强不少。结合实际项目课程中的知识和技巧理解就更为深刻了。

    2022-05-29

  • undefined 👍(2) 💬(1)

    而即使 C++ 之父,也做不到直接写下的代码没有 bug 😂,学会了,这就用来甩锅(逃

    2021-06-01

  • 中年男子 👍(2) 💬(1)

    虽然有点掉队,但是老师的专栏真的真的很不错,给我指引方向,不用自己闷头学 期待老师新作

    2020-02-19

  • Vackine 👍(2) 💬(1)

    从整个语音节奏发音,到文章代码格式真的不能太赞!!感谢吴老师,这个专栏肯定要来回反复持续学习💪💪

    2020-02-14

  • Mmm 👍(1) 💬(1)

    吴老师,您好,首先非常感谢您!现代C++编程实战,我反复看了十遍以上!自己最大的变化是突然发现cpp网站的demo我基本上都可以看懂了,很多开源项目的代码大部分可以看懂了!说句真心话,不是你呕心沥血的文章,我自学可能还没入门就放弃了!再次感谢您!期待您的C++新作品,40来篇看得不过瘾,再来点吧吴老师!!!

    2023-09-30

  • V万能的小黑V 👍(0) 💬(1)

    老师辛苦了,我读了两遍了,准备再读一遍,每次读都有新的领悟。

    2022-03-31

  • Geek_783766 👍(0) 💬(1)

    初读再次感慨 C++ 的博大精深。专栏值得常常再看一遍。感谢老师。

    2021-07-13

  • 大喵 👍(0) 💬(1)

    谢谢老师,还没看完,大部分理解都不深刻,还要二刷三刷,我觉得正如老师说的,以点带面,很有料

    2021-04-13

  • 邵年紧时 👍(0) 💬(1)

    来听吴老师的演讲啦!

    2020-12-04

  • hey 👍(0) 💬(4)

    求助 vs中根据输入的名字自动生成对应的类文件及对应的其他两个文件 有办法吗 vs以外的工具生成也行

    2020-04-10

  • 花晨少年 👍(0) 💬(1)

    再见老师,老师再见

    2020-02-21

  • 喻文州 👍(0) 💬(1)

    老师,我最近看到某看源代码,里面这样写 A * a = new A()

    2020-02-19