/CPP-Study-Repo

C++ study repo. Learn from cherno.

Primary LanguageC++

CPP-study-repo

C++ study repo. Learn from cherno in Youtube. The course arrangement is relatively random. Please reter to the content for detailed topic. The number in the bracket indicates the number of episode. Welcome comment and discuss. If the repo helps you, please give me a star, thank you!

C++ 学习仓库,包括YouTube博主cherno课程的笔记以及全部代码。课程的知识点安排较为随机, 请参考目录以获取对应内容。括号里的数字表示对应的视频序号。如有需要中文版本请留言或者create an issue. 欢迎交流与讨论,如有帮助请给我一个star,谢谢!

Content

Chapter 01 Installation & Working Principle

  1. Installation on Mac(3)
  2. How C++ Works(5)
  3. How C++ Compiler Works(6)
  4. How C++ linker Works(7)

Chapter 02 Basic Syntax

  1. Variable(8)
  2. Function(9)
  3. Head File(10)
  4. Debugging(11)
  5. If Statement(12)
  6. Loops(14)
  7. Control Statement(15)
  8. Pointer(16)
  9. Reference(17)

Chapter 03 Class

  1. Class(18)
  2. Comparison of Class and Struct(19)
  3. How to Write a C++ Class(20)
  4. Static Keyword(21)
  5. Static Inside of Class/Struct(22)
  6. Static in Local Scope(23)
  7. Enumeration(24)
  8. Constructor(25)
  9. Destructor(26)
  10. Inheritance(27)
  11. Virtual Functions(28)
  12. Pure Virtual Function(Interface)(29)
  13. Visibility(30)

Chapter 04

  1. Array(31)
  2. String(32)
  3. String Literal(33)
  4. Const(34)
  5. Mutable(35)

Chapter 05

  1. Constructor Member Initialiser List(36)
  2. Ternary Operator(37)
  3. Create and Initialise Object(38)
  4. new(keyword)(39)
  5. Implict Conversion and Explicit Keyword(40)
  6. Operator and Operator Overloading(41)
  7. this(keyword)(42)

Chapter 06

  1. Object Lifetime(43)
  2. Smart Pointer(44)
  3. Copy and Copy Constructor(45)
  4. Array Operator(46)
  5. Dynamic arrays(47)
  6. Use Vector in an optimal way(48)
  7. Use External Libraries (Static Link)(49)
  8. Dynamic Linkage(50)
  9. Create and Use Libraries(51)

Chapter 07

  1. How to Deal with Multiple Return Types(52)
  2. Templates(53)
  3. Stack VS Heap(54)
  4. Macros(55)
  5. auto(keyword)(56)

Chapter 08

  1. Static Array(57)
  2. Function Pointer(58)
  3. Lambda(59)
  4. namespace std(60)
  5. namespace(61)
  6. Thread(62)
  7. Timing(63)
  8. Multi-dimensional array(64)
  9. Sorting(65)
  10. Type Punning(66)
  11. union(keyword)(67)

Chapter 09

  1. Virtual Destructor(68)
  2. Casting(69)
  3. Break Points(70)
  4. Precompiled Header(72)
  5. dynamic_cast(73)
  6. Bench Marking(74)
  7. Structured Bindings(C++ 17)(75)
  8. optional(C++ 17)(76)
  9. Store Multiple Data in A Single Variable(C++ 17)(77)
  10. How to Store Any Type of data(78)

Chapter 10

  1. Improve C++ Performance(79)
  2. How to Make String Faster(80)
  3. Visualisation of Bench Marking(81)
  4. Singleton(82)
  5. Small String Optimization(SSO)(83)

Chapter 11

  1. Tracking Memory Allocation(84)
  2. Lvalues and Rvalues(85)
  3. Continous Integration(86)
  4. Static Analysis(87)
  5. Argument Evaluation Order(88)
  6. Move Semantics(89)
  7. Move Assignment Operator(90)