managing menus in text mode

I'm trying to build up a menu for my programm.

It can be found here: https://pastebin.com/DiF3CA5z

My main concept was to assembling each line of screen individually and put them in the screen line by line.

I put each menu items (and any other screen element)in a c-style array first and pass both of the content and the lenght of the menu item to the function that arranges in the desired pattern ad prints it.

My problem is that this strategy led to a (very)hard-to manage parameter list of function and a long(long) list of variable init section. And all of this would be much longer when I wanted to create submenus too.

What's the possible ways to solve my problem?
One way to shorten it is to use strings and vectors.
 
void drawMenuFrame(char frameChar, string title, string menuHead, vector<string> menuItems);

General rules in C++
* prefer string over char[] or char*
* prefer vectors over arrays
Thx, I'll try it.
Registered users can post here. Sign in or register to post.