C++ 程序设计
C++ 程序设计
A course in C++ programming. The reference textbook is Stephen Prata, C++ Primer Plus, 6th edition, Posts & Telecom Press, 2020.
Course Information
- Course description
- C++ programming tips
- Reference materials
- Common course rules
- Online C/C++ compiler
- C programming course
Course Setup and Source Code
- Textbook source code
- Visual Studio 2015 project
- Visual Studio 2019 project
- Reference slides
- 学习动机
- 程序设计基础的一些 Tips
- C 程序设计思维导图
- 程序设计基础导引
C and C++ Foundations
| Chapter | Topic | Files |
|---|---|---|
| 01 | Getting Started with C++ | Slides |
| 02 | Setting Out to C++ | Slides |
| 03 | Dealing with Data | Slides |
| 04 | Compound Types | Slides |
| 05 | Loops and Relational Expressions | Slides |
| 06 | Branching Statements and Logical Operators | Slides |
| 07 | Functions: C++’s Programming Modules | Slides |
| 08 | Adventures in Functions | Slides · Guide |
| 09 | Memory Models and Namespaces | Slides · Guide |
Object-Oriented Programming and the Standard Library
| Chapter | Topic | Files |
|---|---|---|
| 10 | Objects and Classes | Slides · Sample · Guide |
| 11 | Working with Classes | Slides · Guide |
| 12 | Classes and Dynamic Memory Allocation | Slides · Guide |
| 13 | Class Inheritance | Slides · Guide |
| 14 | Reusing Code in C++ | Slides · Guide |
| 15 | Friends, Exceptions, and More | Slides · Guide |
| 16 | The string Class and the Standard Template Library | Slides · Guide |
| 17 | Input, Output, and Files | Slides · Guide |
Projects and Demonstrations
- From modules to object-oriented programming
- KeepPet
- PlugIn
- Music demonstration source archive · MIDI version
- Qt game demo
- Visual Studio 2022 + Qt tutorial
- Qt Shape example
- Qt MVC example: MarketQT
- Supplementary materials
Exercises and Online Judge
- Homework management system
- BJFU ACM Online Judge
- Experiment requirements
- Experiment submission example
- Solutions: OJ-C · OJ1 · OJ2 · OJ3 · OJ4 · OJ5