Unable to create C++ level

When you add a new class and choose from the list of existing engine classes, what you’re choosing is which class you want to derive from. This is generally when you want to extend the logic of an existing class.

In your case what you want to do is create a level asset, not derive a new child class (see UnrealEverything’s post above). That’s what the level editor is for. It’s no doubt possible to do purely in C++, but isn’t a sensible approach unless you have a very good reason why you need to do so - the code just wasn’t written with that intent in mind.