Enter to winlibs.com and download the last realease below UCRT runtime.
Unzip the file in the root folder C:\
Press Windows key and look for the Environment Variables Editor.
Click on Environment Variables, select Variables System: Path and click on edit.
Clink on New button and type: C:\mingw64\bin
Save and accept all.
Select: View >> Command Palette >> C/C++: Edit Configurations >> Compiler Path
Choose C:/mingw64/bin/g++.exe from the list. Scroll down and select C Standard c++20
Open the file HelloWorld/src/main.cpp and run it.
Select: Terminal >> Configure Default Build Task
This will open the file .vscode/task.json
Modify args:
"args": [
"-std=c++23",
"-fdiagnostics-color=always",
"-g",
"-Wall",
"${fileDirname}\\*.cpp",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
- Hello World.
- Variables.
- Basic Math.
- Basic math.
- F to C.
- Input/Output Basics.
- Arrays and Vectors.
- Arrays.
- Vectors.
- Decisions.
- If - else.
- If - else if - else.
- Switch.
- Loops.
- For.
- While.
- Do while.
- Strings.
- C style strings.
- C++ style strings.
- Exercise.
- Streams.
- Manipulators.
- Read files.
- Write files.
- String streams.
- Functions.
- Functions.
- Scopes.
- Recursivity.
- Pointers.
- Pointers.
- Pointers and functions.
- References.
- Exercise 1.
- Exercise 2.
- Object Oriented Programming
- Objects.
- Public and private.
- Standard methods.
- Constructors.
- Copy constructor.
- Shallow and deep copy.
- Move constructor.
- Constant class.
- Static class members.
- Exercise.
- Overloading Operators
- Overload constructor.
- Overload assignment operator (copy).
- Overload assignment operator (move).
- Overload operators as member functions.
- Overload operators as global functions.
- Overload insertion and extraction operators.
- Inheritance.
- Basic inheritance.
- Protected members.
- Constructors and destructors.
- Passing arguments to base/derived classes.
- Copy and move construtors.
- Exercise.
- Polymorphism.
- Static binding.
- Virtual functions.
- Override specifier.
- Base class reference.
- Abstract classes.
- Interfaces.
- Exercise.
- Smart Pointers.
- Unique pointers.
- Shared pointers.
- Weak pointers.
- Custom deleters.
- Exception Handling.
- Exception handling.
- Multiple exceptions.
- Stack unwinding.
- User defined exceptions.
- Class level exceptions.
- Std exception.
- Sandard Template Library.
- Macros.
- Functions templates.
- Class templates.
- Class template array.
- Iterators.
- Algorithms.
- Arrays.
- Vectors.
- Deque.
- List.
- Sets.
- Map.
- Stack.
- Queue.
- Priority Queue.
- Lambda Expressions.
- Function objects.
- Stateless lambda.
- Stateful lambda.
- Enumerations.
- Unscoped.
- Scoped.