Allow the user to open a file and specifiy the name of said file.
Allow the user to close said file at any time, this means use threads.
Make a queue to log keypresses in order and allow the user to write the contents of the queue to a file.
Run the program in the background (indefinitely).
When the program ends write the remaining contents of the queue.
Work on open-source projects like Linux operating systems or the arcade simulator MAME. Or start your own open-source project, like a text-based RPG or an operating system. You could also learn a graphics library and build up a modern video game.
Modern Video Games if you mean like AAA game companies are producing can't be done by one person (Well they can but it would take way to long and would be outdated by release), since most of them games have 50+ developers working on them and have a lot more resources.
Anyways I'm in the same boat as you are. I have been studying C++ for about 5 months now and feel its time for me to actually start on a big project. Here are is one idea that I think I might start on.
1) Make a Business program. I don't know the correct term for these types of programs but what I decided to make was this. It would be a Payroll program with its own GUI that keeps track of all employee's hours of work, work days, pay ect. Includes a personal calendar for the employee so they can see their work days. Shows them all their pay information.
A) This project is a great start I think because it can be easily added on to and made into a all around company manager program.
B) One benefit of this project is that it can be challenging or easy depending on what feature you want to add and your skill level. Like say you just want a simple program that just shows the user's work days and how much their net pay would be for that pay period. Or you could go for a more challenging route and add networking so office managers could manage all employee's schedules, add encryption so you can store sensitive information, ect.
C) Like I said before this would be a great program that you can keep working on by adding more and more features until it covers all a companies needs.