The C/C++ Forum Leaders and Experts are rolling out a new series of tutorials with the focus of providing a learning path for new C/C++ developers. As each tutorial is written, the entry in the list will be replaced with a link to the tutorial. Our goal is to fill in every entry, along with even more if any are requested.
Topics
General:
- Setting up a Linux development environment
- An Introduction to VIM
- Hello World: Your first C Program; your first C++ Program; and how they differ.
- The Differences Between C and C++
- Makefile Basics
C:
Novice
- Primitive Types
- Basic Operators
- Control Structures (loops, ifs, and switch)
- Basic Collections
- Functions
- Understanding the Compiler Output
- Structs
Intermediate
- Malloc, Free, and the Heap
- Pointers
- Linked Lists
- Recursion
- String Manipulation
- An Introduction to Debugging
- Function Pointers
Advanced
- Threading
- Sockets
- Shared Objects: What are they and how do I use them?
- A Simple Chat Program Part 1: Listening
- A Simple Chat Program Part 2: Adding a Client
- A Simple Chat Program Part 3: Multiple Clients
- A Simple Chat Program Part 4: Threading
C++:
Novice
- Primitive Types
- Basic Operators
- Control Structures (loops, ifs, and switch)
- Basic Collections
- Functions
- Understanding the Compiler Output
- Classes, Structs, and Objects
Intermediate
- Namespaces
- New, Delete, and the Heap
- Pointers
- References
- Data Encapsulation
- Linked Lists
- The Singleton Method
- Virtual Classes and Interfaces (Polymorphism)
- Templates
- Recursion
- In Depth Collections
- Standard String Manipulation
- An Introduction to Debugging
- Exception Handling
- Function Pointers
Advanced
- Functors, and Lambdas
- Threading
- Sockets
- Shared Objects: What are they and how do I use them?
- A Simple Chat Program Part 1: Listening
- A Simple Chat Program Part 2: Adding a Client
- A Simple Chat Program Part 3: Multiple Clients
- A Simple Chat Program Part 4: Threading
Spoiler
If you come up with any topics that you don't believe are covered, feel free to post in this thread and I'll see about adding them to the list.
Thanks for reading!