What you don't understand is how GUI works.
C++ has no understanding of a monitor. C++ does not know what a pixel is. C++ does not understand mouse or keyboard. All these things are something your operating system handles for you.
All you can do is ask your operating system to do things for you. You ask the operating system to put pictures on the screen. You ask the operating system to tell you what the mouse is doing. You ask the operating system all these things.
Each operating system provides a set of functions you can use to ask it to do things. These are known as the Operating System's API. For example, the Win32 API.
You have a choice. Either you learn to use the API, which is powerful but low-level, or you find another piece of software which is simpler for you to use, and that piece of software asks the operating system to do things for you. These are known as widget toolkits. QT is one of these.
You can do GUI programming in C++ with any C++ compiler. You don't need visual studio. You don't need anything more than a text editor and a C++ compiler.
If you decide you want to learn the Win32 API, start here: http://www.winprog.org/tutorial/
If you decide you want to learn a widget toolkit, pick one and start at their website.