While you can use Cocos2dx for a 'normal' app, it'd be worth evaluating the advantages and disadvantages of using it.
Let's say that right now it was a basic application, is it worth having the extra overhead powering the engine which wasn't being used to its full potential? Could you perhaps code your application in a less complex way if you used a different cross-platform solution?
Or perhaps, your application is basic but will potentially expand to use some of the features within the engine or that the engine implements well? If so, then it'd be worth using the engine to start with to avoid rewriting it.
Evaluate where you wish to see your application go and the features which it may require in the future, and then see how Cocos2dx suits it. While it'd be great to focus your learning on just the one engine, it's still good to get a broad range of experience with different technologies!