I recently started learning C++ and wxWidgets. Now I'm doing a calculator. When I start writing code, everything is ok, but when code gets bigger and bigger, it becomes a mess.
I want to know any C++ GUI code architectures, design principles and patterns that will help to write clean, flexible and scalable GUI applications.
Your question certainly is broad, (like your code!) which makes an answer challenging. There are a couple of specific things I’d suggest that might help you.
Learn the SOLID Design Principles. They will help guide you through focusing on how to divide your code into manageable classes.
Learn how to write unit tests. They will encourage you to divide your code into smaller units, so that they’re easier to test.
To learn how to apply both of these things, I recommend the book Refactoring by Martin Fowler. You will learn a ton about it in very small, easy to learn steps and practices.