https://github.com/lszl84/wx_stdvariant_tutorial
Simplifying class design with std::variant in C++
https://github.com/lszl84/wx_stdvariant_tutorial
cpp design-patterns patterns
Last synced: about 5 hours ago
JSON representation
Simplifying class design with std::variant in C++
- Host: GitHub
- URL: https://github.com/lszl84/wx_stdvariant_tutorial
- Owner: lszl84
- License: mit
- Created: 2023-06-08T16:16:54.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2026-03-25T14:25:29.000Z (4 months ago)
- Last Synced: 2026-03-26T17:10:35.297Z (3 months ago)
- Topics: cpp, design-patterns, patterns
- Language: C++
- Homepage: https://devmindscape.com
- Size: 1.58 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Component-based design in C++ using `std::variant` and `std::visit`.
[](https://www.youtube.com/watch?v=DdCfogQiI9k)
Full Tutorial: https://www.youtube.com/watch?v=DdCfogQiI9k
This tutorial is a part of the series about building a multiplatform Paint App in C++ with wxWidgets: https://www.youtube.com/watch?v=Spt5VF1aSps&list=PL0qQTroQZs5sxKZDdJrn8fEjNXCPT7f5T
## Requirements
This works on Windows, Mac, and Linux. You'll need `cmake` and a C++ compiler (tested on `clang`, `gcc`, and MSVC).
Linux builds require the GTK3 library and headers installed in the system.
## Building
To build the project, use:
```bash
cmake -S. -Bbuild
cmake --build build
```
This will create a directory named `build` and create all build artifacts there. The main executable can be found in the `build/subprojects/Build/wx_stdvariant_tutorial_core` folder.
---
Check out the blog for more! [devmindscape.com](https://devmindscape.com)
---