智伤帝的个人博客

智伤帝

马上订阅 智伤帝的个人博客 RSS 更新: https://blog.l0v0.com/atom.xml

C++ 基础入门

2022年11月13日 11:39

前言

  随着学习的深入,C++ 的学习越来越迫在眉睫。
  虽然我在学习 Maya API 以及 Unreal 过程中已经写过不少的 C++ 代码。
  但以前写 C++ 都是用 Python 的经验迁移过去使用的,很多 C++ 的特性都不懂,很多库也不怎么会用。
  所以正因为如此,才希望自己可以深入学习好 C++

课程推荐

C++ MasterClass

在 youtube 上找到了一个非常棒的教程
Youtube地址(不完整): https://www.youtube.com/watch?v=8jLOx1hD3_o
udemy 完整版地址: https://www.udemy.com/course/the-modern-cpp-20-masterclass/
B站
https://www.bilibili.com/video/BV1Hr4y1H7wB
https://www.bilibili.com/video/BV1JY4y1Y7uZ
https://www.bilibili.com/video/BV1iA4y1X76r
https://www.bilibili.com/video/BV1A34y1e7KS
https://www.bilibili.com/video/BV1434y1e7N4

Github地址: https://github.com/rutura/The-C-20-Masterclass-Source-Code

  教程足足有 30 小时长,而且还是 udemy 教程的阉割版本,不过里面有第一章会教导如何使用 MSVC gcc clang 三种 C++ 编译器构建环境。
  我 fork 了他的仓库加上我自己的 VSCode 配置 仓库地址: https://github.com/FXTD-ODYSSEY/The-C-20-Masterclass-Source-Code

  默认 tasks 是配置了三中不同编译的选项,如果注释掉两个的话,那就可以直接在 VScode 实现 ctrl+shift+b 实现编译并运行。
  教程里面主要 IDE 环境是使用 VScode 搭建的,可能会有人困惑,why not VS。
  我很久以前开发 Maya C++ 就是使用 VS 进行开发的,说实话,IDE 隐藏了太多细节,一旦出错,反而是无头苍蝇,无从查起。 知乎回答
  当然也同其他回答说得也对,用什么工具都无所谓,关键是懂得 C++ 的整个编译流程。

The Cherno C++

https://www.youtube.com/watch?v=18c3MTX0PK0&list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb
https://www.bilibili.com/video/BV1gk4y1r7UH

  游戏开发大佬推出的一系列编程课程。

parallel 101

  后来非常偶然地,我翻到一个大佬 (小彭老师) 的课程

https://github.com/parallel101/course
https://www.bilibili.com/video/BV1fa411r7zp

  这个课程用直播和录播的形式详细介绍了从 cmake 到 C++ 的使用。
  而且老师年轻有为,能力很强,经验丰富。

原子之声

C++现代实用教程(一):基础主线(VSCODE) gitlab地址
C++现代实用教程(二):面向对象基础 gitlab地址
C++现代实用教程(三):面向对象之友元与继承 gitlab地址
C++现代实用教程(四):面向对象核心多态 gitlab地址
C++现代实用教程:智能指针 gitlab地址
C++现代实用教程: Namespace命名空间 gitlab地址

  这位老师也很赞~
  但是还没仔细看…

C++ 道法器术

https://www.bilibili.com/video/BV1pu411y7n1
https://www.bilibili.com/video/BV1RV4y1x7qH

  C++ 是一门很复杂的语言,像我是从 Python 开始进阶编程的。
  当我将 Python 很多用法摸透之后,进入到 Python 底层,发现 C++ 还很多底层的内容等待我去学习(:з」∠)
  那上面的视频,比较系统地总结了 C++ 从入门到进阶的各个不同阶段地内容,学习 C++ 有很清晰的整体图谱。
  当然视频里面其实是介绍作者推出的课程的~

个人剖析文章 01_C++ 道法器术.md

搭建运行环境

  C++ 语言和 Python 运行方式有相当大的不同,

参考: https://smartkeyerror.com/Python-Virtual-Machine

  编译 C++ 需要有 C++ 编译器来生成汇编代码(二进制机器码) ,不同的编译器有不同的优化策略,所以版本和编译器平台都会对生成的汇编有很大影响。
  教程提供了 https://en.cppreference.com/w/cpp/compiler_support 这个网站。
  可以看到不同平台编译器对各种 CPP 规范的支持情况,如果用了老版本就不能使用新版本的 C++ 写法
  目前 C++ 也在不断演进,从古老的 C++98 到现在 C++11 C++14 C++17 C++20 以及后续即将推出的 C++23 C++26
  目前主流编译器的最新版本都支持到 C++17 了。

编译器下载配置

  市面上最主流的 C++ 编译器有 MSVC gcc clang ,其中 MSVC 是 windows 平台的,另外两个是可跨平台开发。
  windows 下如何安装环境呢? 推荐使用 choco 进行安装

1
Set-ExecutionPolicy Bypass -Scope...

剩余内容已隐藏

查看完整文章以阅读更多